我想从网站上获取每日日出/日落时间.是否可以使用Python抓取Web内容?使用的模块是什么?有没有可用的教程?
在我的维基百科用户页面上,我运行一个维基百科脚本,显示我的统计数据(编辑的页数,新页数,每月活动等).
我想把这些信息放在我的博客上.
是否有API可以让我做这样的事情?
我尝试使用Python的urllib获取维基百科文章:
f = urllib.urlopen("http://en.wikipedia.org/w/index.php?title=Albert_Einstein&printable=yes")
s = f.read()
f.close()
Run Code Online (Sandbox Code Playgroud)
然而,而不是HTML页面,我得到以下响应:错误 - 维基媒体基金会:
Request: GET http://en.wikipedia.org/w/index.php?title=Albert_Einstein&printable=yes, from 192.35.17.11 via knsq1.knams.wikimedia.org (squid/2.6.STABLE21) to ()
Error: ERR_ACCESS_DENIED, errno [No Error] at Tue, 23 Sep 2008 09:09:08 GMT
Run Code Online (Sandbox Code Playgroud)
维基百科似乎阻止了不是来自标准浏览器的请求.
有谁知道如何解决这个问题?
我一直在寻找大约2个月的时间来找到一个只获得维基百科描述部分的脚本.(这是我正在建造的机器人,不适用于IRC.)也就是说,当我说的时候
/wiki bla bla bla
Run Code Online (Sandbox Code Playgroud)
它将转到维基百科页面bla bla bla,获取以下内容,并将其返回到聊天室:
"Bla Bla Bla"是由Gigi D'Agostino制作的一首歌的名字.他把这首歌描述为"我写的一篇文章,思考所有谈话和谈话但没有说什么的人".着名但无意义的声乐样本取自英国乐队Stretch的歌曲"你为什么这样做"
这是我找到的最接近的,但它只获取URL:
import json
import urllib.request, urllib.parse
def google(searchfor):
query = urllib.parse.urlencode({'q': searchfor})
url = 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&%s' % query
search_response = urllib.request.urlopen(url)
search_results = search_response.read().decode("utf8")
results = json.loads(search_results)
data = results['responseData']
hits = data['results']
if len(hits) > 0:
return hits[0]['url']
else:
return "No results found."
Run Code Online (Sandbox Code Playgroud)
(Python 3.1)