您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
你是如何开始写python爬虫的?
爬虫,都是,网页你是如何开始写python爬虫的?
发布时间:2016-12-08加入收藏来源:互联网点击:
你是如何开始写python爬虫的?
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
我这两天刚发了Python爬虫的小程序,网上抓取《老友记》的剧情。
这个例子从安装python开始一直到爬出数据存到文件中。
我觉得python爬虫入门先从简单入手,一堆学习资料拿到手也不一定会看,最最简单的:
知道python基本语法
学过编程的人很快就能掌握, 即使没学过的看例子,再加上一句一句的解释也能明白。
然后搭建环境
这是必备步骤,比如安装python, Jupyter Notebook 和网页爬虫相关的包
找例子直接上手
看资料不动手会看的没兴趣,自己动手爬出东西才有成就感。
我觉得这就入门了,至于网页开发语言,它不是爬虫的障碍,遇到不同格式的网页,自己查一下用法就好了。学编程最重要的是学解决问题的能力,而不是一堆类型和语法……你说对么?
关注我了解更多python的应用,欢迎加入圈子,共同学习
回答于 2019-09-11 08:43:50
这个问题我会,本蛋之前在网易做个三个月的爬虫实习生,自己用爬虫接的外包也挣了小几千块钱。对于爬虫的学习方面自己也是有一定的心得,接下来就从几个方面简单的介绍一下爬虫学习的路线。
磨刀不误砍柴功
万丈高楼平地起,磨刀不误砍柴功。要想学习好爬虫,一定要用良好的python基础,所以爬虫学习的第一步是先磊实基础。关于python的入门课程也有很多,可以上去B站上边白嫖,随便找个观看数比较多的看就可以咯。看到大概知道怎么用pymysql啥的链接数据库基本上就可以咯。当然,正则表达式是重点,后边解析网页内容的时候会经常用到。
requests
python中标准的爬虫库有urllib,但是一般推荐新手用第三方请求库requests,因为urllib的接口调用真是星号比的繁琐,requests对其进行了进一步的封装,让你加请求头、使用代理IP的更加方便。
数据爬下来后还要进行进一步的解析,解析方面如果是json格式的数据直接用json库loads,再用键值对方式提取出来即可。如果包含很多标签,那么就要掌握一下bs4和xpath的用法,这边强烈建议熟悉xpath的开发文档,对后边使用框架有极大的帮助。
scrapy框架
学习完requests后可以进一步学习一下scrapy框架的用法。scrapy也不难,就简单的分为请求队列、调度器、中间件等等五个部分。主要是希望你能够深刻的去理解settings文件里边每一个开关的作用,对你的爬虫项目开发会起到很大的帮助,不管是限速、并发、分布式啥的,都挺好。
https,tcp
学习的过程中,可以穿插http、tcp方面的知识。所以的网络交互都是用一个个请求所组成的。前端再花里胡哨的功能,都是背后一串请求在支持。研读http和tcp的知识可以让你更加透彻的理解请求。当然,这些知识也是面试的高频考点,学好了百利而无一害。
总而言之,爬虫学习可以大概分成两部分,第一部分python基础,可以B站自己找视频看看,第二部分爬虫学习,推荐崔庆才的爬虫书,书上关于爬虫的知识应有尽有,啃完那一本书基本上就可以对爬虫所涉及到的方方面面有一个比较全面的理解。至于js逆向啥的,以后再说。有问题的小伙伴可以私信找我交流!
回答于 2019-09-11 08:43:50
关键还是你的思路,爬虫就是个软件开发的活,关键还是要有开发的思路。
把思路想好,再开发就会很容易了。爬虫很多时候,就是你关注的关键词,你准备采用什么算法来进行有效爬取。就是你看再多的书。也是没有太大作用的。具体的问题,要自己多动手思考和尝试。这个才是最关键的。
回答于 2019-09-11 08:43:50
1、网页的基本知识:
基本的HTML语言知识(知道href等大学计算机一级内容即可)
理解网站的发包和收包的概念(POST GET)
稍微一点点的js知识,用于理解动态网页(当然如果本身就懂当然更好啦)
2、一些分析语言,为接下来解析网页内容做准备
NO.1 正则表达式:扛把子技术,总得会最基础的:
NO.2 XPATH:高效的分析语言,表达清晰简单,掌握了以后基本可以不用正则
参考:XPath 教程
NO.3 Beautifulsoup:
美丽汤模块解析网页神器,一款神器,如果不用一些爬虫框架(如后文讲到的scrapy),配合request,urllib等模块(后面会详细讲),可以编写各种小巧精干的爬虫脚本
官网文档:Beautiful Soup 4.2.0 文档 参考案例:
No4. JSONpath
抓包类的爬虫(通常是动态网页),往往需要json的加持。jsonpath便应运而生,和xpath一样,它是快速检索分析各种各样json文件中待抓取内容的重要方法。
更多官方文档看此:JSONPath - XPath for JSON
如果看到这里你已经有明确方向了,那么恭喜你入门了!如果还有什么不明白的同学可以私信问我呢
上一篇:威马首款量产SUV EX5首次亮相,号称20万600公里的车是否靠谱?
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |