当前位置: 首页 > 后端技术 > Python

不会Python的这几个库,我都不敢说会爬虫

时间:2023-03-26 12:02:12 Python

如果我不知道Python的这些库,我不敢说我??会爬。哪些内容。今天给大家说说学习爬虫,一些我们必须要掌握的第三方库。话不多说,下面直接上干货。请求库1.requestsGitHub:https://github.com/psf/requestsrequests库应该是爬虫最流行最实用的库了,非常人性化。我之前也写过一篇文章介绍它的使用。让我们来看看Python的Requests库。你可以看看。requests最详细的用法可以参考官方文档:https://requests.readthedocs....小案例>>>importrequests>>>r=requests.get('https://api.github.com/user',auth=('user','pass'))>>>r.status_code200>>>r.headers['content-type']'application/json;charset=utf8'>>>r.encoding'utf-8'>>>r.textu'{"type":"User"...'>>>r.json(){u'disk_usage':368627,u'private_gists':484,..}2.urllib3GitHub:https://github.com/urllib3/ur...urllib3是一个非常强大的http请求库,提供了一系列的URL操作函数。详细使用方法请参考:https://urllib3.readthedocs.i...小用例:>>>importurllib3>>>http=urllib3.PoolManager()>>>r=http.request('GET','http://httpbin.org/robots.txt')>>>r.status200>>>r.data'User-agent:*\nDisallow:/deny\n'3.seleniumGitHub:https://github.com/SeleniumHQ...自动化测试工具。调用浏览器的驱动程序。通过这个库,可以直接调用浏览器完成某些操作,比如输入验证码。对于这个库,它不仅适用于Python。JAVA、Python、C#等都可以使用selenium的这个库。关于如何用Python语言使用这个库,可以访问https://seleniumhq.github.io/...查看官方文档使用小案例:fromseleniumimportwebdriverbrowser=webdriver.Firefox()browser.get('http://seleniumhq.org/')4.aiohttpGitHub:https://github.com/aio-libs/a..基于asyncio实现的HTTP框架。异步操作使用async/await关键字,使用异步库抓取数据,可以大大提高效率。这是一个当高级爬虫必须要掌握的异步库。关于aiohttp的详细操作可以看官方文档:https://aiohttp.readthedocs.i...小用例:importaiohttpimportasyncioasyncdeffetch(session,url):asyncwithsession.get(url)as响应:返回awaitresponse.text()asyncdefmain():与aiohttp.ClientSession()异步作为会话:html=awaitfetch(session,'http://python.org')print(html)if__name__=='__main__':loop=asyncio.get_event_loop()loop.run_until_complete(main())解析库1、beautifulsoup官方文档:https://www.crummy.com/softwa...html和xml解析,从web中提取信息pages,同时拥有强大的API和多种分析方法。我经常使用的一个解析库,对解析html很有用。这也是写爬虫的人必备的库。2.lxmlGitHub:https://github.com/lxml/lxml支持HTML和XML解析,支持XPath解析,解析效率很高。3.pyqueryGitHub:https://github.com/gawel/pyqueryjQuery的Python实现,可以用jQuery语法操作和解析HTML文档,具有很好的易用性和解析速度。数据存储1.pymysqlGitHub:https://github.com/PyMySQL/Py...官方文档:https://pymysql.readthedocs.i...纯Python实现的MySQL客户端操作库。非常实用也非常简单。2.pymongoGitHub:https://github.com/mongodb/mo...官方文档:https://api.mongodb.com/python/顾名思义,是一个直接连接mongodb数据库的库查询操作。3、redisdump的使用方法:https://blog.csdn.net/zhwitbi...redis-dump是一个redis和json互换的工具;redis-dump是基于ruby开发的,需要ruby环境,而新版本的redis-dump需要2.2.2以上的ruby版本,而centos中的yum只能安装ruby2.0版本。需要安装ruby管理工具rvm才能安装更高版本的ruby;