1. python爬虫多线程假死怎么解决
如果是爬虫的话,这个一般都是由于网络原因造成的卡住,可以做两层控制:
在HTTP请求上设置好超时时间,最好设定sockect的超时,这样更底层一些。
在上层做一个检测机制,定时轮询线程是否正常,如果遇到不响应的直接kill掉。
2. python 程序假死的问题
我遇到的这种现象常见在引用占用了大量的系统内存,
后来我将直接读入大量数据到内存的过程改为用iter读取, 现象没再出现.
你的方案"超过一定时间...", 可以视为"守护进程",
如果这个进程是你的应用内的某个线程, 恐怕它会一同"睡"去 :(
.. 还是先确认一下是否是内存占用的原因吧, 如果是通过节省内存的方式可以克服的.
3. Python 写的爬虫爬久了就假死怎么回事
有可能你频繁的爬取同一个网站的数据,这个网站把你的ip暂时或者永久的加入了黑名单,一段时间内或者永久限制你的访问。网站可能有最大访问频率的限制,根据这个时间来设置时延可以解决这个问题。或者可能由于网络不稳定等原因。至于其他的问题就不清楚了。
4. 为什么都说爬虫PYTHON好
python上手容易,第三方库多(go现在第三方库也多)。
如果不考虑采集速度,不用登陆——requests,单线程,简单的代码如下:
url = "http://dd.com"
html = requests.get(url)
html.encoding=('GBK') #避免编码问题 如有报错,另外测试
print (html.text[:1000]) #输出1000个字符,避免ide假死。
本人没学过java c#,不清楚他们两个一个简单爬虫的代码量,想来最起码比python的要多。
不过说实话python的工作机会没有 java c#的多,也就是说别想着花钱去培训班培训了几个月,就能找到月入过万的工作。
python的运行效率比其他编程语言要差,不考虑效率的情况下,可以用python写写小代码,有钱的可以写scrapy代码,堆服务器做分布式爬虫。