คำถามติดแท็ก urllib2

9
อะไรคือความแตกต่างระหว่างโมดูล urllib, urllib2, urllib3 และคำขอ?
ในหลามสิ่งที่เป็นความแตกต่างระหว่างurllib, urllib2, urllib3และrequestsโมดูล? ทำไมถึงมีสาม? พวกเขาดูเหมือนจะทำสิ่งเดียวกัน ...


13
วิธีดาวน์โหลดรูปภาพโดยใช้คำขอ
ฉันกำลังพยายามดาวน์โหลดและบันทึกภาพจากเว็บโดยใช้requestsโมดูลของไพธ อน นี่คือรหัส (ที่ใช้งานได้) ที่ฉันใช้: img = urllib2.urlopen(settings.STATICMAP_URL.format(**data)) with open(path, 'w') as f: f.write(img.read()) นี่คือรหัสใหม่ (ไม่ทำงาน) โดยใช้requests: r = requests.get(settings.STATICMAP_URL.format(**data)) if r.status_code == 200: img = r.raw.read() with open(path, 'w') as f: f.write(img) คุณสามารถช่วยฉันในสิ่งที่แอตทริบิวต์จากการตอบสนองต่อการใช้งานจากrequests?

18
การดาวน์โหลดรูปภาพผ่าน urllib และ python
ดังนั้นฉันจึงพยายามสร้างสคริปต์ Python ที่ดาวน์โหลดคอมมิคส์และวางไว้ในโฟลเดอร์บนเดสก์ท็อปของฉัน ฉันพบโปรแกรมที่คล้ายกันสองสามรายการที่นี่ซึ่งทำสิ่งที่คล้ายกัน แต่ไม่มีอะไรที่เหมือนกับสิ่งที่ฉันต้องการ สิ่งที่ฉันคิดว่าคล้ายกันมากที่สุดอยู่ที่นี่ ( http://bytes.com/topic/python/answers/850927-problem-using-urllib-download-images ) ฉันพยายามใช้รหัสนี้: >>> import urllib >>> image = urllib.URLopener() >>> image.retrieve("http://www.gunnerkrigg.com//comics/00000001.jpg","00000001.jpg") ('00000001.jpg', <httplib.HTTPMessage instance at 0x1457a80>) จากนั้นฉันค้นหาคอมพิวเตอร์ของฉันเพื่อหาไฟล์ "00000001.jpg" แต่สิ่งที่ฉันพบคือรูปภาพแคชของมัน ฉันไม่แน่ใจด้วยซ้ำว่าบันทึกไฟล์ไว้ในคอมพิวเตอร์ของฉัน เมื่อฉันเข้าใจวิธีดาวน์โหลดไฟล์ฉันคิดว่าฉันรู้วิธีจัดการกับส่วนที่เหลือ เป็นหลักเพียงใช้สำหรับวนรอบและแยกสตริงที่ '00000000'. 'jpg' และเพิ่ม '00000000' เป็นจำนวนมากที่สุดซึ่งฉันจะต้องพิจารณาอย่างใด คำแนะนำใด ๆ เกี่ยวกับวิธีที่ดีที่สุดในการทำเช่นนี้หรือวิธีการดาวน์โหลดไฟล์อย่างถูกต้อง? ขอบคุณ! แก้ไข 6/15/10 นี่คือสคริปต์ที่เสร็จสมบูรณ์แล้วมันจะบันทึกไฟล์ไปยังไดเรกทอรีใด ๆ ที่คุณเลือก ด้วยเหตุผลแปลก ๆ บางอย่างไฟล์ไม่ได้ถูกดาวน์โหลดและพวกมันเพิ่งทำ คำแนะนำใด ๆ เกี่ยวกับวิธีการทำความสะอาดจะได้รับการชื่นชมมาก …
183 python  urllib2  urllib 

5
AttributeError (ออบเจ็กต์ "str" ​​ไม่มีแอตทริบิวต์ "read" ")
ใน Python ฉันได้รับข้อผิดพลาด: Exception: (<type 'exceptions.AttributeError'>, AttributeError("'str' object has no attribute 'read'",), <traceback object at 0x1543ab8>) ระบุรหัสหลาม: def getEntries (self, sub): url = 'http://www.reddit.com/' if (sub != ''): url += 'r/' + sub request = urllib2.Request (url + '.json', None, {'User-Agent' : 'Reddit desktop client by /user/RobinJ1995/'}) response = urllib2.urlopen …


3
ต้องติดตั้ง urllib2 สำหรับ Python 3.5.1
ฉันใช้ Python 3.5.1 สำหรับ Mac ฉันต้องการใช้urllib2โมดูล ฉันลองติดตั้งแล้ว แต่ได้รับแจ้งว่ามันถูกแยกออกเป็นurllib.requestและurllib.errorสำหรับ Python 3 คำสั่งของฉัน (ทำงานจากไดเร็กทอรี bin เฟรมเวิร์กในตอนนี้เนื่องจากไม่อยู่ในเส้นทางของฉัน): sudo ./pip3 install urllib.request ส่งคืนสิ่งนี้: Could not find a version that satisfies the requirement urllib.request (from versions: ) No matching distribution found for urllib.request ฉันได้รับข้อผิดพลาดเดียวกันก่อนหน้านี้เมื่อฉันพยายามติดตั้งurllib2ในบัดดล


10
Python urllib2: รับการตอบสนอง JSON จาก url
ฉันพยายามรับ URL โดยใช้ Python และคำตอบคือ JSON อย่างไรก็ตามเมื่อฉันวิ่ง import urllib2 response = urllib2.urlopen('https://api.instagram.com/v1/tags/pizza/media/XXXXXX') html=response.read() print html html เป็นประเภท str และฉันต้องการ JSON มีวิธีใดบ้างที่ฉันสามารถจับการตอบสนองเป็น JSON หรือพจนานุกรม python แทน str
91 python  json  urllib2 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.