urllib2.urlopen无法获取所有内容

我是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

我得到了更多的故事链接。我知道超时参数,但是提供它并不能解决任何问题。


在浏览器中拉页面时,我在做什么错或者该怎么做才能显示所有内容?


白猪掌柜的
浏览 285回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python