2016-03-29 41 views
0

Bir siteyi taramaya çalışıyorum ancak kodum yalnızca sitenin açık olması ve daha sonra yeniden açılmasını sağlamak için çalışıyor. Birden şey denedik ve şu iki hatalarına gelmesini sağlayacak adres: ilk: ValueError: "httpError: HTTP Hatası 416: İstenen Range karşılanabilir"Python Scrape urllib2 HTTP Hataları

urlslist = open("list_urls.txt").read() 
urlslist = urlslist.split("\n") 
for urlslist in urlslist: 

htmltext = urllib2.urlopen("www..."+ urlslist) 
data = json.load(htmltext) 

Ayrıca bazı başlıkları ve böyle ama kullanarak denedi olsun 'ValueError: Hiçbir JSON nesnesi kodu çözülemedi':

req = urllib2.Request('https://www....) 
req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 6.1)AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36') 

htmltext = urllib2.urlopen(req) 
data = json.load(htmltext) 

Stumped, herhangi bir yardım mı?

+0

neden "www ..."? Bu senin kodun mu? –

+0

Lütfen http://stackoverflow.com/help/mcve adresini okuyun. – boardrider

+0

url: http://www.stubhub.com/beyonce-tickets-beyonc--san-diego-qualcomm-stadium-5-12-2016/event/9519801/ – sky44

cevap

-1

Bir URL istediğinde, "http (s): //" kısmını da eklemeniz gerekir. (Örn yerine https://www.google.com, metin dosyası google.com vardır), bu kodu var metin dosyası sadece url'nin "name.com" bölümünü içerdiğini varsayarsak gerekir:

htmltext = urllib2.urlopen("https://www." + urlslist) 

ise url stubhub.com (yorumunuzda belirttiğiniz gibi) bir, "s" ye ihtiyacınız yok. Bunun yerine bu olacaktır:

htmltext = urllib2.urlopen("http://www." + urlslist) 

json hata sadece yüklemek için hiçbir json dosyası olmadığını gerçeğine bağlı olabilir. Geliştirici paneline bir göz atmanız ve json biçimindeki dosyaların getirildiğinden emin olmanız gerekir.