为什么不是';你在工作吗?(Python 2.7.10)
我收到了消息“urllib.error.HTTPError:HTTP错误403:禁止”为什么不是';你在工作吗?(Python 2.7.10),python,beautifulsoup,Python,Beautifulsoup,我收到了消息“urllib.error.HTTPError:HTTP错误403:禁止” 说到模块,我是一个完全的初学者,所以我不知道我在做什么。抱歉。您可能需要指定用户代理: from bs4 import BeautifulSoup import urllib.request r = urllib.request.urlopen('http://www.aflcio.org/Legislation-and-Politics/Legislative-Alerts').read() soup =
说到模块,我是一个完全的初学者,所以我不知道我在做什么。抱歉。您可能需要指定用户代理:
from bs4 import BeautifulSoup
import urllib.request
r = urllib.request.urlopen('http://www.aflcio.org/Legislation-and-Politics/Legislative-Alerts').read()
soup = BeautifulSoup(r)
print type(soup)
因为该错误是在调用之前由
urlopen…read
引发的。显然这个网站不喜欢程序化访问,所以你是说这是因为我想看的网站?无论我选择哪个url,我都会收到错误。这些错误是否与您从这个url得到的内容有关?这是因为网站:错误的重要部分是禁止的。@是的,除非您使用某种代理,并且该代理拒绝您的传出访问或响应,否则您无法从每个可能的URL(包括Google或Facebook)获取HTTP 403错误。或者,检查您的防火墙设置-无论出于何种原因,您可能正在阻止自己的连接。
import requests
from bs4 import BeautifulSoup
ret = requests.request(
'GET',
'http://www.aflcio.org/Legislation-and-Politics/Legislative-Alerts',
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/602.4.8 (KHTML, like Gecko) Version/10.0.3 Safari/602.4.8'}
)
soup = BeautifulSoup(ret.text, "html.parser")
print type(soup)