怎樣主動將的Twitter信息同步到海內(nèi)的新浪微博、開心網(wǎng)、大家網(wǎng)等海內(nèi)SNS網(wǎng)站,我先前曾經(jīng)先容過一個同步要領(lǐng),該要領(lǐng)雖能實(shí)現(xiàn)同步功效,但是同步不是及時的,有約莫一小時左右的時差,這個時差是由TwitterFeed引起的,同時該要領(lǐng)的設(shè)置較為繁瑣,必要多次翻墻。
因此,我開始實(shí)驗(yàn)一種新的同步要領(lǐng),開辟了一個定時主動讀取并同步Twitter信息的Python步伐,以簡化同步的流程,并收縮同步時間,做到根本及時同步功效。原先的同步的流程圖是: twitter -> appspot -> twitterfeed -> ping.fm -> customurl -> huotu -> 新浪微博,新的同步流程釀成了: twitter -> appspot -> huotu -> 新浪微博,步調(diào)大為簡化,只需在GAE上設(shè)置一個定時實(shí)行的籌劃使命即可。
由于GAE支持Cron Job籌劃使命,因此,我們的Python步伐可以實(shí)現(xiàn)每分鐘主動挪用一次,挪用的時間,先從Twitter上抓取用戶最新的消息,抓取樂成后,將消息同步到嘀咕火兔,然后分發(fā)到新浪微博、開心網(wǎng)等,要是設(shè)置為每分鐘實(shí)行的話,同步時差只有一分鐘左右的時間,根本實(shí)現(xiàn)了及時同步Twitter信息到新浪微博等SNS網(wǎng)站的功效。
該步伐Python步伐我在GAE上調(diào)試并不太順?biāo),根?jù)官方的闡明設(shè)置裝備部署好了cron.yaml文件,但是更新twitter.py之后,Cron Job籌劃使命照舊不起作用,背景也看不到相干的Cron Job使命。
厥后顛末一番研究,終于辦理了GAE中Python的Cron Job籌劃使命題目,緣故原由很簡樸,由于我的“Google App Engine SDK for Python”是好久曩昔安置的,當(dāng)時間GAE還不支持籌劃使命,因此無法更新cron.yaml文件,重新下載了一個最新版本的“Google App Engine SDK for Python”安置后,Cron Job籌劃使命更新就樂成了。
不外,新的題目又來了,我發(fā)明該應(yīng)用挪用Twitter API的時間,失敗率非常高,險些有一半的環(huán)境,挪用的時間會提示“Rate limit exceeded. Clients may not make more than 150 requests per hour.”,這讓我猜疑GAE的外部IP是不黑白常少,另有許多第三方步伐在GAE上挪用Twitter API,才導(dǎo)致每小時的挪用凌駕150次,不然的話,光我本身的挪用絕對不會有這么高的頻率,大概是由于Twitter沒有將GAE的IP設(shè)置為白名單,要是有一天Twitter不限定GAE的IP,那應(yīng)該就沒什么題目了。
安置利用闡明:
下載要領(lǐng),利用TortoiseSVN檢出這個SVN地點(diǎn),然后,編輯app.yaml,修改為本身的appspot應(yīng)用名,接著,修改twitter.py文件的末了一行,將本身的Twitter用戶名,嘀咕火兔用戶名和暗碼分別填入,cron.yaml文件里是籌劃使命設(shè)置,然后就可以根據(jù)此文的要領(lǐng)舉行公布,實(shí)行 appcfg.py update 目次名,利用Gmail帳號和暗碼,就可以公布了。
公布之后,GAE就可以定時實(shí)行twitter.py步伐,由于定時實(shí)行可以設(shè)置最短為1分鐘,因此同步速率很快,根本可以實(shí)現(xiàn)即時主動同步的結(jié)果。
地 址:北京市海淀區(qū)建材城中路12號院17號樓1層119室
武漢分公司地址:湖北省武漢市洪山區(qū)南國雄楚廣場A4棟2011室
鄭州分公司地址:河南鄭州金水區(qū)東風(fēng)路科技市場對面米蘭陽光6號樓917室
郵 箱:haidanet@163.com
24小時聯(lián)系電話: 15201609116 13651084380