python-写爬虫时遇到的问题 TimeoutError: [WinError 10060]
问题提示->
Timeouterror:[WinError 10060]由于连接放在一点时间后没有正确答复或连接的主机没有反应,连接尝试失败。
这两天在写爬虫脚本,运行的时候会出现这个报错。因为我爬取到数据之后会插入到数据库,看到这个提示就很正常的以为是在链接服务器数据库时出现的错误,就去网上找解决办法,花了一天也没有解决这个问题。
第二天,有需要写一个爬虫的脚本,这次不需要把结果插入数据库,结果和昨天报了一样的错误。于是恍然大悟,这个问题并不是链接数据库的时候报的错,而是爬取信息的时候发生的错误。然后去搜索解决办法,解决问题的办法搜到了很多,试了很多都没有用,后来看到一个设置防火墙的尝试之后成功了,现在就把操作步骤写在下面。
解决步骤->
设置自己电脑的防火墙:windows->设置->windows安全中心->防火墙和网络保护->允许应用通过防火墙->更改设置
我把列表里面的python和pycharm的专用和公用都勾选了,再运行我的爬虫脚本就不会报错了,然后我去运行昨天的脚本也不会报错了。
具体为什么关闭之后就可以,我现在也还不知道。之后弄清楚之后会更新在这里。
问题原因->
python报这个错误是连接不到对方的服务器。
连接不上对方的服务器就有以下几种可能:
0. 对方服务器拒绝你的请求。
这对用户来说非常不友好,即使是被轮了好几遍的煎蛋也只是加了个验证码,而不是拒绝请求。
1. 你的网络问题。
由于用了代理,这个可能性非常大。
2. 有人攻击煎蛋网,导致那段时间里煎蛋网炸了。
可用浏览器就排出此情况。
我今天执行脚本又出现了这个报错,于是我更换网络尝试一下,意外的跑起来了(公司又两个网络,电信和移动的,我更换了又可以跑了)