我是 python 的初学者,从 reddit.com 提取一些数据更准确地说,我试图向 http:www.reddit.com/r/nba/.json 发送请求以获取页面的 JSON 内容然后解析它用于有关特定团队或球员的条目。
为了自动化数据收集,我请求这样的页面:
import urllib2
FH = urllib2.urlopen("http://www.reddit.com/r/nba/.json")
rnba = FH.readlines()
rnba = str(rnba[0])
FH.close()
我还在脚本副本上提取这样的内容,以确保:
FH = requests.get("http://www.reddit.com/r/nba/.json",timeout=10)
rnba_json = FH.json()
FH.close()
但是,当我使用任何一种方法手动访问http://www.reddit.com/r/nba/.json时,我都没有获得完整的数据, 特别是当我调用
print len(rnba_json['data']['children']) # prints 20-something child stories
但是当我做同样的加载复制粘贴的 JSON 字符串时,如下所示:
import json
import urllib2
fh = r"""{"kind": "Listing", "data": {"modhash": ..."""# long JSON string
r_nba = json.loads(fh) #loads the json string from the site into json object
print len(r_nba['data']['children']) #prints upwards of 100 stories
我得到更多的故事链接。我知道超时参数,但提供它并没有解决任何问题。
当我在浏览器中拉出页面时,我做错了什么或者我能做些什么来获得所有呈现的内容?