新手,用python写的爬虫,为啥出现404

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新手,用python写的爬虫,为啥出现404相关的知识,希望对你有一定的参考价值。

可能是你的header写的太简单了,我刚刚也是一直404,因为一开始我的header里只有User-Agent,再加上Accept,Accept-Encoding,Content-Type,Host,Origin,Proxy-Connection,Referer,Upgrade-Insecure-Requests就行了,这些都可以从chrome的开发者工具里直接看,或者用fiddler等工具看。 参考技术A 解决办法:
当爬虫爬取国外网站的时候,常常会出现HTTPErro 404的情况,而用浏览器却可以正常浏览网页,这时候只需要把爬虫伪装成浏览器即可,也就是加上User-Agent就可以了,具体如何获取User-Agent,可以用浏览器随便打开一个网页,然后右键选择‘审查元素’,在Network里面找到即可!
参考技术B 现在很多网站会对ip访问次数进行限制,增加了网站反爬虫机制,当ip访问次数受限时会出现404的情况。
想解决这类问题需要配合http比如ipidea来进行爬虫工作,能提高爬虫效率节约时间,保护我们的本地信息!
参考技术C 很多了,基本上一搜就搜出来很多
什么618IP代理.牛魔站大爷蘑菇
其实都是差不多的,可能价格方面有不同,还有有的节点可能不一样
你可以对比一下,选个最适合自己的

为啥Python写的爬虫有时候抓取的数据是乱

参考技术A 1. 使用chrome浏览器,打开示例页面
2. 在帖子标题处,右键选择"审查元素",可以看到标题的源代码

3. 进行简单的分析,我们需要获取的是title后面的内容,根据页面实际内容,我们编写相应的正则表达式:
title_re=re.compile('<h1 class="core_title_txt " title="(.*?)"')
4. 同理,我们对帖子内容进行"审查元素",得到内容的源代码

5. 编写相应的正则表达式如下:
content_re=re.compile('<div id="post_content_\d*" class="d_post_content j_d_post_content ">(.*?)</div>')
6. 这样通过urllib2打开页面后,使用上述的正则表达式进行匹配,再对标题和文本内容进行相应的处理即可

以上是关于新手,用python写的爬虫,为啥出现404的主要内容,如果未能解决你的问题,请参考以下文章

python爬虫爬到一定的数据后出现404 not found是啥原因

python爬虫运行出现这种问题怎么办!

在python中出现这种情况为啥

wordpress更改过页面固定连接以后为啥新建页面会出现404错误?

为啥用python turtle库画蟒蛇会出现这个错误?

网站为啥会出现404错误,如何解决