0

请原谅我,因为我对 scraperwiki 和 twitter 挖掘的了解有限。

我有以下代码来抓取 Twitter 数据。但是,我想编辑代码以仅给我在特定日期(例如,2013 年 4 月 1 日)为纽约进行地理标记的结果。你知道我应该怎么做吗?

###############################################################################
# Twitter srcaper for the term 'hello'.
###############################################################################

import scraperwiki
import simplejson

# retrieve a page
base_url = 'http://search.twitter.com/search.json?q='
q = 'hello'
options = '&rpp=10&page='
page = 1

while 1:
    try:
        url = base_url + q + options + str(page)
        html = scraperwiki.scrape(url)
        #print html
        soup = simplejson.loads(html)
        for result in soup['results']:
            data = {}
            data['id'] = result['id']
            data['text'] = result['text']
            data['from_user'] = result['from_user']
            data['created_at'] = result['created_at']
            # save records to the datastore
            scraperwiki.datastore.save(["id"], data)
        page = page + 1
    except:
        print str(page) + ' pages scraped'
        break
4

1 回答 1

0

除此之外q,使用查询参数geocodeuntil请参阅Twitter API 文档的此页面 。请注意,您不能使用搜索 API 来查找大约一周前的推文。

此外,它更容易用于urllib.urlencode()构建您的查询,例如

query_dict = {'q':'search term(s)', 'geocode':'37.781157,-122.398720,25mi', 'until':'2013-05-10'}
query = urllib.urlencode(query_dict)
response = urllib.urlopen(basic_url + query).read()

更新:请参阅此示例刮板,您可以复制并适应您的需求。

于 2013-05-10T00:27:38.340 回答