คำถามติดแท็ก python-requests

ใช้สำหรับ PYTHON REQUESTS LIBRARY เท่านั้น คำขอเป็นไลบรารี Python HTTP ที่มีคุณสมบัติครบถ้วนพร้อมด้วยตรรกะ API ที่ใช้งานง่าย

1
แพคเกจคำขอ Python: การจัดการการตอบสนอง xml
ฉันชอบrequestsแพ็คเกจนี้มากและวิธีจัดการการตอบสนอง JSON ที่สะดวกสบาย ขออภัยฉันไม่เข้าใจว่าฉันสามารถประมวลผลการตอบกลับ XML ได้หรือไม่ ใครมีประสบการณ์ในการจัดการกับการตอบสนอง XML ด้วยrequestsแพคเกจบ้าง? จำเป็นต้องรวมแพ็คเกจอื่นสำหรับการถอดรหัส XML หรือไม่

2
การเพิ่มส่วนหัวให้กับโมดูลคำขอ python
ก่อนหน้านี้ฉันใช้httplibโมดูลเพื่อเพิ่มส่วนหัวในคำขอ ตอนนี้ฉันกำลังลองสิ่งเดียวกันกับrequestsโมดูล นี่คือโมดูลคำขอ python ที่ฉันใช้: http://pypi.python.org/pypi/requests ฉันจะเพิ่มส่วนหัวในrequest.postและrequest.getบอกว่าฉันต้องเพิ่มfoobarคีย์ในแต่ละคำขอในส่วนหัวได้อย่างไร

3
จะส่งคุกกี้ในคำขอโพสต์ด้วยไลบรารีคำขอ Python ได้อย่างไร
ฉันพยายามใช้ไลบรารีคำขอเพื่อส่งคุกกี้พร้อมกับคำขอโพสต์ แต่ฉันไม่แน่ใจว่าจะตั้งค่าคุกกี้ตามเอกสารประกอบอย่างไร สคริปต์นี้มีไว้สำหรับใช้ใน Wikipedia และคุกกี้ที่ต้องส่งเป็นแบบฟอร์มนี้: enwiki_session=17ab96bd8ffbe8ca58a78657a918558e; path=/; domain=.wikipedia.com; HttpOnly อย่างไรก็ตามการrequestsเริ่มต้นอย่างรวดเร็วของเอกสารให้สิ่งนี้เป็นเพียงตัวอย่างเดียว: cookies = dict(cookies_are='working') ฉันจะเข้ารหัสคุกกี้เช่นเดียวกับด้านบนโดยใช้ไลบรารีนี้ได้อย่างไร ฉันจำเป็นต้องสร้างด้วยไลบรารีคุกกี้มาตรฐานของ python จากนั้นส่งไปพร้อมกับคำขอ POST หรือไม่

5
ไลบรารีคำขอ Python เปลี่ยนเส้นทาง URL ใหม่
ฉันได้ดูเอกสารคำขอ Python แต่ไม่เห็นฟังก์ชันการทำงานใด ๆ สำหรับสิ่งที่ฉันพยายามบรรลุ allow_redirects=Trueในสคริปต์ของฉันฉันกำลังตั้งค่า ฉันต้องการทราบว่าหน้านี้ถูกเปลี่ยนเส้นทางไปยังอย่างอื่นหรือไม่ URL ใหม่คืออะไร ตัวอย่างเช่นหาก URL เริ่มต้นคือ: www.google.com/redirect และ URL สุดท้ายคือ www.google.co.uk/redirected ฉันจะรับ URL นั้นได้อย่างไร

8
บันทึกคำขอทั้งหมดจากโมดูลคำขอ python
ฉันใช้หลามจอง ฉันจำเป็นต้องดีบักOAuthกิจกรรมบางอย่างและฉันต้องการให้มันบันทึกคำขอทั้งหมดที่กำลังดำเนินการ ฉันสามารถรับข้อมูลนี้ได้ngrepแต่น่าเสียดายที่ไม่สามารถเชื่อมต่อ grep https ได้ (ซึ่งจำเป็นสำหรับOAuth) ฉันจะเปิดใช้งานการบันทึก URL ทั้งหมด (+ พารามิเตอร์) ที่Requestsเข้าถึงได้อย่างไร

6
จะ "เข้าสู่ระบบ" เว็บไซต์โดยใช้โมดูลคำขอของ Python ได้อย่างไร
ฉันพยายามโพสต์คำขอเข้าสู่ระบบเว็บไซต์โดยใช้โมดูลคำขอใน Python แต่ใช้งานไม่ได้จริงๆ ฉันยังใหม่กับสิ่งนี้ ... ดังนั้นฉันจึงคิดไม่ออกว่าฉันควรจะสร้างคุกกี้ชื่อผู้ใช้และรหัสผ่านของฉันหรือสิ่งการอนุญาต HTTP บางประเภทที่ฉันพบ (??) from pyquery import PyQuery import requests url = 'http://www.locationary.com/home/index2.jsp' ตอนนี้ฉันคิดว่าฉันควรจะใช้ "โพสต์" และคุกกี้ .... ck = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'} r = requests.post(url, cookies=ck) content = r.text q = PyQuery(content) title = q("title").text() print title ฉันรู้สึกว่าฉันทำคุกกี้ผิด ... ฉันไม่รู้ หากไม่ได้เข้าสู่ระบบอย่างถูกต้องชื่อของโฮมเพจควรปรากฏเป็น "Locationary.com" และหากเป็นเช่นนั้นควรเป็น "หน้าแรก" …

8
Python ร้องขอไลบรารีถึงวิธีการส่งผ่าน Authorization header ด้วยโทเค็นเดียว
ฉันมี URI คำขอและโทเค็น ถ้าฉันใช้: curl -s "<MY_URI>" -H "Authorization: TOK:<MY_TOKEN>" ฯลฯ ฉันได้รับ 200 และดูข้อมูล JSON ที่เกี่ยวข้อง ดังนั้นฉันจึงติดตั้งคำขอและเมื่อฉันพยายามเข้าถึงทรัพยากรนี้ฉันได้รับ 403 อาจเป็นเพราะฉันไม่รู้ไวยากรณ์ที่ถูกต้องในการส่งโทเค็นนั้น ใครสามารถช่วยฉันคิดออก นี่คือสิ่งที่ฉันมี: import sys,socket import requests r = requests.get('<MY_URI>','<MY_TOKEN>') r. status_code ฉันลองแล้ว: r = requests.get('<MY_URI>',auth=('<MY_TOKEN>')) r = requests.get('<MY_URI>',auth=('TOK','<MY_TOKEN>')) r = requests.get('<MY_URI>',headers=('Authorization: TOK:<MY_TOKEN>')) แต่ไม่มีงานเหล่านี้

6
ทำไมไม่ request.get () return? การหมดเวลาเริ่มต้นที่ request.get () ใช้คืออะไร?
ในสคริปต์ของฉันrequests.getไม่ส่งคืน: import requests print ("requesting..") # This call never returns! r = requests.get( "http://www.some-site.com", proxies = {'http': '222.255.169.74:8080'}, ) print(r.ok) อะไรคือสาเหตุที่เป็นไปได้? วิธีการรักษาใด ๆ ? การหมดเวลาเริ่มต้นที่getใช้คืออะไร?

6
ดาวน์โหลดและบันทึกไฟล์ PDF ด้วยโมดูลคำขอ Python
ฉันพยายามดาวน์โหลดไฟล์ PDF จากเว็บไซต์และบันทึกลงในดิสก์ ความพยายามของฉันล้มเหลวด้วยข้อผิดพลาดในการเข้ารหัสหรือส่งผลให้เป็น PDF เปล่า In [1]: import requests In [2]: url = 'http://www.hrecos.org//images/Data/forweb/HRTVBSH.Metadata.pdf' In [3]: response = requests.get(url) In [4]: with open('/tmp/metadata.pdf', 'wb') as f: ...: f.write(response.text) --------------------------------------------------------------------------- UnicodeEncodeError Traceback (most recent call last) <ipython-input-4-4be915a4f032> in <module>() 1 with open('/tmp/metadata.pdf', 'wb') as f: ----> 2 f.write(response.text) 3 UnicodeEncodeError: …

1
คำร้องขอรับ / โพสต์อย่างง่ายถูกบล็อกใน python 3 แต่ไม่ได้อยู่ใน python 2
ฉันกำลังทำงานกับ web scraper อย่างง่ายใน python 3 แต่เมื่อฉันส่งรับหรือโพสต์คำขอการตอบสนองคือ 403 ใน python 2 ทำงานได้ดี ฉันใช้ไลบรารี่คำขอรุ่นเดียวกันทั้งสองเวอร์ชัน ฉันได้ลองด้วยVerify=False/Trueแต่ความแตกต่างในทั้งสองรุ่นยังคงอยู่ คำร้องขอ = 2.22.0 certifi = 2019.9.11 from requests import get url = 'https://www.gamestop.com/' header = { 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'en-US,en;q=0.5', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:56.0) Gecko/20100101 Firefox/56.0', 'DNT': '1', 'Upgrade-Insecure-Requests': …

5
คำขอ Python: คำขอ POST วางส่วนหัวการอนุญาต
ฉันพยายามสร้างคำขอ API POST โดยใช้ไลบรารีคำขอ Python ฉันกำลังผ่านAuthorizationส่วนหัว แต่เมื่อฉันลองดีบั๊กฉันจะเห็นว่าส่วนหัวนั้นกำลังลดลง ฉันไม่รู้ว่าเกิดอะไรขึ้น นี่คือรหัสของฉัน: access_token = get_access_token() bearer_token = base64.b64encode(bytes("'Bearer {}'".format(access_token)), 'utf-8') headers = {'Content-Type': 'application/json', 'Authorization': bearer_token} data = '{"FirstName" : "Jane", "LastName" : "Smith"}' response = requests.post('https://myserver.com/endpoint', headers=headers, data=data) ที่คุณสามารถดูข้างต้นผมการตั้งAuthorizationหัวในการขัดแย้งคำขอ {'Connection': 'keep-alive', 'Content-Type': 'application/json', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'User-Agent': 'python-requests/2.4.3 CPython/2.7.9 Linux/4.1.19-v7+'}แต่มันจะหายไปส่วนหัวคำขอจริง: …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.