python - HTTPError 999:“没有黑客攻击”
问题描述
我有这个问题:我正在尝试在 Python 中创建一个脚本来下载一个网站并查找一些信息。
这是代码:
import urllib.request
url_archive_of_nethys = "http://www.aonprd.com/Default.aspx"
def getMainPage():
fp = urllib.request.urlopen(url_archive_of_nethys)
mybytes = fp.read()
mystr = mybytes.decode("utf8")
fp.close()
print(mystr)
def main():
getMainPage()
if __name__ == "__main__":
main()
但是当我开始它时,我得到:
<HTTPError 999: 'No Hacking'>
我也尝试使用 curl 命令:
curl http://www.aonprd.com/Default.aspx
我正确下载了页面
我正在使用 Visual Studio 和 python 3.6 进行开发
任何建议将不胜感激谢谢
解决方案
他们可能会检测到您的用户代理并过滤您。尝试改变它:
req = urllib.request.Request(
url,
data=None,
headers={'User-Agent': ("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) "
"AppleWebKit/537.36 (KHTML, like Gecko) "
"Chrome/35.0.1916.47 Safari/537.36")})
fp = urllib.request.urlopen(req)
推荐阅读
- c++ - 指向字符串数组中字符的指针的 C++ 指针
- docker - 由于 RAM 中断,Docker Compose WSL2 就像一盏圣诞灯
- python - 将“类似地图”的可调用对象传递给 scipy 的差分进化
- c++ - Arduino MySQL 连接器 - SELECT 语句返回 NULL
- php - Laravel Linux 存储:链接不会保留存储的内容
- java - 文本对象未显示在 javafx 场景窗口对象中
- python - 如何在函数事件中使用 tix 气球?
- android - AbsoluteToLocal 在 Android 上不像在 Windows 上那样工作
- javascript - 隐藏制表符单元格上的标题标签
- python - 如何将 HTML 转换为 Python 字典列表