我尝试使用BeautifulSoup和requests模块运行此Python脚本:
from bs4 import BeautifulSoup as bs
import requests
url = 'https://udemyfreecourses.org/
headers = {'UserAgent' : 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.193 Safari/537.36'
}
soup = bs(requests.get(url, headers= headers).text, 'lxml')
但当我发送这条线路时:
print(soup.get_text())
它不会刮取文本数据,而是返回以下输出:
Not Acceptable!Not Acceptable!An appropriate representation of the requested resource could not be found on this server. This error was generated by Mod_Security.
我甚至在请求网页时使用了标题,因此它看起来像一个普通的导航器,但我仍然收到阻止我访问真实网页的消息
注意:该网页直接在导航器上运行得很好,但当我试图抓取它时,它不会显示太多信息
除了我在标题中使用的方法之外,还有其他方法可以从网站获得完全有效的请求,并绕过名为Mod_security的安全性吗
任何帮助都会非常有用,谢谢
编辑:必须在“用户代理”中添加破折号
在这个答案之后https://stackoverflow.com/a/61968635/8106583
您的用户代理就是问题所在。这个用户代理为我工作
另外:您的ip现在可能已被阻止:D
相关问题 更多 >
编程相关推荐