根據下面的代碼,我將拉取請求編號保存在一個文本文件中,我想將它們上傳到我的代碼中的url,但我得到了錯誤中提到的錯誤標題。urllib2.URLError:urlopen錯誤沒有給出主機
import urllib2
import json
import httplib
def event_spider(org,repo):
try:
nbPrequest_reopened=0 #number of pull requests reopened
pages=1
while pages<=3:
headers={'User-Agent':'Mozilla/5.0(X11;Linux i686)',
'Authorization':'token 516ed78e0521c6b25d9726ad51fa63841d019936',}
read_file=open('C:\Python27\pullRequest_number.txt','r+')
rf=read_file.readlines()
for number in rf:
url_event=('https://api.github.com/repos/'+ org +'/'+ repo + '/issues/'+ str(number) +'/events?per_page=99&state=all&page='+str(pages))
event_Request=urllib2.Request(url_event,headers=headers)
eventObject=urllib2.urlopen(event_Request)
eventData=json.load(eventObject)
for element in eventData:
if element['event']=='reopened':
nbPrequest_reopened+=1
#print url_event
pages+=1
except httplib.BadStatusLine:
pass
print 'The number of pull request reopened is %s ' %(nbPrequest_reopened)
if __name__=='__main__':
event_spider('rails','rails')
回溯(最近通話最後一個):
File "C:/Users/ABDILLAH/PycharmProjects/Pandas_data_analysis/event_spider.py", line 27, in <module>
event_spider('rails','rails')
File "C:/Users/ABDILLAH/PycharmProjects/Pandas_data_analysis/event_spider.py", line 16, in event_spider
eventObject=urllib2.urlopen(event_Request)
File "C:\Python27\lib\urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "C:\Python27\lib\urllib2.py", line 427, in open
req = meth(req)
File "C:\Python27\lib\urllib2.py", line 1126, in do_request_
raise URLError('no host given')
urllib2.URLError: <urlopen error no host given>
有人可以幫我解決這個問題呢? 謝謝。
你檢查了生成的網址嗎?它有效嗎? – jophab
文件中的每一行可能以換行符「\ n」結尾。所以從filw中讀取的數字最後可能會有\ n。這將導致網址無效 – jophab