爬虫抓取问题:
cpp 代码
- wget http://www.bokee.net/alisoubao/rss2.xml
这个地址抓取的内容为以前很老的内容。
同样用java写的爬虫程序抓取的内容和用wget抓取的内容一样。
而用
cpp 代码
- curl http://www.bokee.net/alisoubao/rss2.xml
抓取的内容则是最新的。
感觉很奇怪。后来在google搜索了一下 wget的参数,最后用
cpp 代码
- wget --user-agent=AGENT http://www.bokee.net/alisoubao/rss2.xml
来抓取,抓取的内容是最新的,和用curl抓取的是一样的。
原因是因为:
--user-agent=AGENT 加了这个参数 的意思是 设定代理的名称为 AGENT而不是默认的 Wget/VERSION.
可见bokee网对user-agent为AGENT的请求进行了过滤。
同理:
检查java写的爬虫程序里,请求时带的user-agent里含有crawler
所以bokee网也应该对crawler的user-agent进行了过滤。
解决办法:把user-agent的值改写即可。