BaiduSpider是一款基于Python的百度搜索结果爬虫,支持多种搜索结果。这篇文章将从多个方面介绍BaiduSpider。
什么是BaiduSpider?
BaiduSpider是一款强大但轻量的百度搜索结果提取器,基于BeautifulSoup4和requests。它支持多种搜索结果,包括百度网页搜索,百度图片搜索,百度知道搜索,百度视频搜索,百度资讯搜索,百度文库搜索, 百度经验搜索,百度百科搜索。其中,百度网页搜索还支持多种搜索结果块,例如百科块,贴吧块,计算块等多样的搜索结果。除此以外,即将在今年八月发布的BaiduSpider V1.0.0正式版还会加入移动端的爬取,增加爬取范围。
GitHub:https://github.com/BaiduSpider/BaiduSpider 文档:https://baiduspider.github.io PyPI:https://pypi.org/project/BaiduSpider
怎么下载BaiduSpider?
在你的项目里,直接使用pip
安装:
pip install baiduspider
当然,你也可以从GitHub clone,获取最新的更新:
git clone https://github.com/BaiduSpider/BaiduSpider.git && python setup.py install
然后在你的项目文件中导入:
from baiduspider import BaiduSpider
# ...
BaiduSpider简单使用
BaiduSpider的使用也十分简单。下面的这个例子打印了BaiduSpider的网页搜索返回结果,也就是简易版的网页搜索CLI:
from baiduspider import BaiduSpider
from pprint import pprint
pprint(BaiduSpider().search_web(input()))
注:这段代码仅适用于BaiduSpider V0.2.0及以下,不适合正式版中的返回模型式搜索结果。
怎么样?是不是非常简单?除了易用性之外,BaiduSpider还支持自定义返回值。例如,我只想看到最最普通的网页搜索返回结果,没有其他花里胡哨的块。那么,我可以这样写:
from baiduspider import BaiduSpider
from pprint import pprint
pprint(BaiduSpider().search_web(input(), exclude=['all']))
没错,只多了一个参数:exclude
。这个参数非常强大,感兴趣的可以去文档看一看。
使用BaiduSpider制作的项目
在这里我精选了几个使用BaiduSpider制作的开源项目,下面我将来分别介绍这几个项目。
Aggregate Search
Aggregate Search是一款聚合搜索引擎,目前已经接入了百度、Google、搜狗和微信这四个平台。
Demo:https://agsearch.frp.limour.top/ GitHub:https://github.com/Limourli-liu/Aggregate-search
BaiduCloud
BaiduCloud是一个爬取百度数据、进行情态分析并生成词云的开源项目。
GitHub:https://github.com/neverdied/BaiduCloud
题拍拍
这是一个参赛作品,使用了深度学习技术进行小学应用题自动解题,其中数据抓取部分使用了BaiduSpider。
GitHub:https://github.com/jackli777/CCF-BDCI-2020-MWP-
最后
如果你喜欢BaiduSpider这个项目的话,请留下你的star吧!你的支持真的对我们很重要~
BaiduSpider GitHub项目地址:https://github.com/BaiduSpider/BaiduSpider