正文
火车头搜狐文章搜索结果采集规则
原咨询问题
网友给的采集地址是百度搜索关键词论文,并限制搜索范围为搜狐网站。地址如下:
https://www.baidu.com/s?wd=site%3Awww.sohu.com%20%2B%20%E8%AE%BA%E6%96%87&rsv_spt=1&rsv_iqid=0xa780217a00000a77&issp=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8&rqlang=cn&tn=baiduhome_pg&rsv_enter=1&rsv_dl=tb&rsv_t=a608PBWt3fGCEdrKNxOENDR1JznABY8Xfu%2FO%2B3VXTcmrTwPZuYKsjbV1NRZ4dpU1aIPg&rsv_btype=i&inputT=13427&gpc=stf%3D1640237640%2C1640842439%7Cstftype%3D1&tfflag=1&si=www.sohu.com&ct=2097152
解决答案
因为百度的搜索结果对于URL是加密的,不适合作为采集源。所以我直接在搜狐站内进行搜索,并采集相应的结果。
浏览器F12可以看到搜索返回的数据在下面的地址内:
https://search.sohu.com/search/meta?keyword=%E8%AE%BA%E6%96%87&terminalType=pc&ip=搜索来源IP&city=搜索来源城市&spm-pre=smpc.csrpage.0.0.16408452446110PSQ2Gj&SUV=211202161722KPBY&from=0&size=10&searchType=news&queryType=outside&queryId=16408452451306K66017&pvId=16408452446110PSQ2Gj&refer=&size=10&maxL=15&spm=&_=1640845244609
在这个地址中有几个参数需要注意下:
1.数据地址包含搜索来源IP以及来源城市,这个参数可能会影响返回的搜索结果。实测可以去掉这个内容,下面会讲。
2.&from=0这个参数代表了搜索结果数据页面,因为默认搜索结果是无限加载的,你浏览器不断下拉,他搜索结果就不断的一页一页的加载。经测试0为返回搜索结果的初始第一页。具体下面讲。
3.keyword=%E8%AE%BA%E6%96%87这个代表搜索的关键词
搜索结果分析
首先对搜索结果数据地址的URL进行一下精简并测试搜索结果数据量大小。
经过测试发现,结果URL可以删除搜索来源IP和城市。其余参数因为不清楚具体的意义,就不做精简了。
搜索结果数据最大为191页(算上0页)。
最后数据URL地址为:
https://search.sohu.com/search/meta?keyword=论文&terminalType=pc&spm-pre=smpc.csrpage.0.0.1640843844511wPyD47w&SUV=211202161722KPBY&from=0&size=10&searchType=news&queryType=outside&queryId=16408438451306K66009&pvId=1640843844511wPyD47w
上面为搜索结果第一页URL
https://search.sohu.com/search/meta?keyword=论文&terminalType=pc&spm-pre=smpc.csrpage.0.0.1640843844511wPyD47w&SUV=211202161722KPBY&from=190&size=10&searchType=news&queryType=outside&queryId=16408438451306K66009&pvId=1640843844511wPyD47w
上面为搜索结果第191页URL。
我们采集的话可以通过火车头修改&from=的参数批量生成URL地址。初始0,递增1,最大190即可。
文章URL分析
这个比较简单了,他数据结果里一目了然。
直接采集对应URL即可。这里就不说了。