繁体   English   中英

BeautifulSoup 未返回完整 html - 403 禁止?

[英]BeautifulSoup not returning full html - 403 Forbidden?

我在解析网站时遇到问题。 似乎有“403 Forbidden”错误。 这是否意味着我无法浏览网站? 如果是这样,是否有某种解决方法?

import requests
from bs4 import BeautifulSoup
import lxml

URL = 'https://frequentmiler.com/best-credit-card-sign-up-offers/'
webpage = requests.get(URL)

soup = BeautifulSoup(webpage.content, 'lxml')

print(soup.prettify())

这将返回:

<html>
 <head>
  <title>
   403 Forbidden
  </title>
 </head>
 <body>
  <center>
   <h1>
    403 Forbidden
   </h1>
  </center>
  <hr/>
  <center>
   nginx
  </center>
 </body>
</html>

这意味着您无权查看 url。

该网站知道您正在尝试从 python 代码中获取源页面,您必须通过在请求标头中添加用户代理来逃避这一点。

headers = {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"}
webpage = requests.get(URL,headers=headers)

现在,您就像使用简单的 web 浏览器的人类冲浪者 =)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM