簡體   English   中英

Python中使用“requests”模塊報錯405

[英]Error 405 when using "requests" module in Python

更新:問題似乎與 Windows Powershell 有關。程序在 Python IDLE 中運行。

所以我已經正確安裝了請求, urllib3模塊。 但是每當我嘗試使用請求時,我都會收到 HTTP 405 錯誤。 請檢查隨附的屏幕截圖以了解我的代碼和我收到的錯誤。

  • 注意:我嘗試附上我的代碼和錯誤的圖像,但 StackOverflow 應用程序給了我一個錯誤。

  • 注意 2:我也嘗試過 GET 方法,但它也不起作用,它會拋出相同的 HTTP 405 錯誤。

我的代碼:

from bs4 import BeautifulSoup
import requests

file = requests.post("https://w3schools.com/python/demopage.htm")

soup = BeautifulSoup(file,"lxml");

print(soup.prettify())

我得到的錯誤:

追溯(最近調用最后):導入請求文件“C:\Users\Prasanna\AppData\Local\Programs\Python\Python36\lib\site-packages\requests__init__.py”中的文件“requestspractice.py”,第 1 行,第 43 行,在導入 urllib3 文件“C:\Users\Prasanna\Python1\urllib3.py”,第 15 行,在 resp = urllib.request.urlopen(req) 文件“C:\Users\Prasanna\AppData\Local\ Programs\Python\Python36\lib\urllib\request.py”,第 223 行,在 urlopen 中返回 opener.open(url, data, timeout) 文件“C:\Users\Prasanna\AppData\Local\Programs\Python\Python36\ lib\urllib\request.py",第 532 行,打開響應 = meth(req, response) 文件 "C:\Users\Prasanna\AppData\Local\Programs\Python\Python36\lib\urllib\request.py",第 642 行,在 http_response 'http', request, response, code, msg, hdrs) 文件“C:\Users\Prasanna\AppData\Local\Programs\Python\Python36\lib\urllib\request.py”,第 570 行,錯誤返回 self._call_chain(*args) 文件“C:\Users\Prasanna\AppData\Local\Programs\Python\Python36\lib\urllib\request.py”,第 504 行,在 _call_chai n result = func(*args) 文件“C:\Users\Prasanna\AppData\Local\Programs\Python\Python36\lib\urllib\request.py”,第 650 行,在 http_error_default 中 raise HTTPError(req.full_url, code, msg, hdrs, fp) urllib.error.HTTPError: HTTP 錯誤 405: 方法不允許

我相信你想要做的是GET的頁面,而不是POST什么吧。

file = requests.get("https://w3schools.com/python/demopage.htm")

你的 URL 是錯誤的,應該在“html”結尾,但你使用的是:“https://w3schools.com/python/demopage.htm”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM