初学者Selenium爬虫小记-01 |不要着急,慢慢来

前言

我是从今年二月底才开始接触到爬虫的——此前,我对此一无所知,连header,request都不知道,对于html更是一窍不通。我并不是一个程序员,我非计算机类专业出身,学的是传统工科,本科时对编程也毫无兴趣,唯一的编程方向的启蒙说大一必修的公共课C++。总之,大学时的我从未想过将从事数据相关职业,可以说造化弄人了。作为一个大龄半自学不成材的新人数据产品经理,在工作后的三个月里,学到了很多,更意识到不懂的更多,学海茫茫,不要心慌,不要气馁,好好游吧。

我觉得将这段时间的心得体会,遇到的问题,解决的问题,没能解决的问题都记录下来。我的程度决定了我的想法和代码都比较稚嫩,也许只能给像我一样的新手一点小小的参考,如有错误还请指正,谢谢啦。

警告⚠: 本文中不会出现太多代码(因为我大部分代码反正也都是抄来抄去改一改的),如果感觉很话痨很无聊,请绕行。


关于环境

我现在用的是python3.6.4,chrome版本是66,对应的chromedriver版本是2.38。 对于两者版本号需要对应,否则chrome driver是没办法正常工作的,这个博客整理了对应关系。chromedriver与chrome的对应关系表,下面还附有chromedriver的下载地址,chromedriver下载

chromedriver下载之后我是将解压后的.exe复制粘贴在路径: C:\Windows\System32  里。完成这个以后还需要用pip3 安装selenium (pip3这个有很详细的解释,只想稍微说一句:大部分轮子都不需要自己在网上下哇!只需要在cmd 里面,python安装文件夹里,输入pip3 install 想要的文件名 ,程序就自动将对应版本的包连下载带安装都搞好了,我居然最近才知道……)

环境好像可以说的也就这么多,以后遇到具体问题再来补充好了。


Selenium的特点

是一个自动化的测试工具,这个介绍也是网上都有很多了。好处咣咣的,因为它是浏览器!不是模拟,不是假装,就是一个货真价实的浏览器!一切的操作都那么直白,你平时输密码的地方一样输密码(输法略有不同),平时点点点的地方一样点点点,后退刷新关页面,非常符合正常人的使用思路了。而且还有好处呢,相信你也很清楚了,就是对于小白用户(比如我)来说,和想爬的网站之间斗智斗勇的难度都降低了不少,毕竟我们就是个浏览器,只不过是个非常有耐心,可以连着几个小时一直点点点,而且手速略快的浏览器:)网站为了反爬做出的那些努力,比如说什么异步加载啦,渲染啦,测速啦(这些概念我现在还很一知半解)都显得有点无能为力……毕竟再怎么样,数据最终还是要拿给用户看的,拿给用户看就是拿给我看,只要数据能拿到,一切都好办。一般网站对selenium的限制可能就是要求多刷新几次这样吧,毕竟也不能设置规则真的封ip,因为误伤的几率很大啊,真实的客户也很讨厌动不动输验证码,断网,这种不好的体验,所以我们也就被放过咯。

所以看完上面这段的新人你肯定跟我当初一样很激动,哦,但是事物总是好坏相伴。坏事就是,浏览器爬虫的速度和规模,都会有很大限制。我个人觉得,selenium爬虫适合做一些小而美的项目,定向爬取自己感兴趣的,有价值的一部分信息,但是如果想要大而全……就真的请考虑别的办法吧。

比如说,我的老板,上周四给我布置了一个任务,让我把58同城上我们城市的所有租房信息都爬下来存起来……这个,真的是臣妾做不到啊!我的浏览器需要孤独地在后台一个网页一个网页地点开,爬取的速度永远跟不上更新的速度,就算它假设从我爬取时再也不更新,我也需要打开200万个页面,还不时被网站禁止请求……200万,一个天荒地老的,孤独的数字……好了扯远了,遇到这种情况我们该咋办呢?学习分布式爬虫,建立庞大的ip池,更新更好的硬件,做一个集群等等……最重要的是,真诚地看着老板的眼睛说,

“对不起,我不会。”

然鹅我忘记了第一时间甩锅,还好后来好好解释了一下技术的难度,同时真诚表达了我会努力学习的高觉悟,老板同意让我那就先爬一部分吧。

好了根据我以上的真实案例,相信你对selenium的好处和局限性应该又有了一点新的认识。在我看来,selenium是一个非常佛系的爬虫,它可以慢悠悠的每两秒钟开一个网页(我自己设置的为了防反爬),每一个动作都在告诉你:不要着急,不要着急,慢慢来,但是时间可以慢慢展示它真正的力量,告诉你什么叫聚沙成塔,龟兔赛跑,你天长地久地爬下去,总有一天可以看到胜利的曙光……

本次废话到此结束,谢谢观看(咦然而并没有人看)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,386评论 6 479
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,939评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,851评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,953评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,971评论 5 369
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,784评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,126评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,765评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,148评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,744评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,858评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,479评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,080评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,053评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,278评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,245评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,590评论 2 343

推荐阅读更多精彩内容

  • Selenium是一款强大的基于浏览器的开源自动化测试工具,最初由 Jason Huggins 于 2004 年在...
    FifiZhuang阅读 7,577评论 5 71
  • Selenium 官网Selenium WebDriver官网webdriver实用指南python版本 WebD...
    顾顾314阅读 46,955评论 0 34
  • 这篇文章在介绍官网的同时使用了比较多的脚本示例,示例里遇到的问题有部分在本篇文章进行了解释,还有一篇文章专门记录了...
    顾顾314阅读 12,898评论 3 32
  • 最近需要在一个网站下载一批数据。但是输入一个查询,返回三四万条结果,每次只能导出500条,而且每次还得输入下载条目...
    我就爱思考阅读 26,463评论 3 25
  • 温斯迪老太太逝世前,让律师写了一份遗嘱。在遗嘱中,她把大笔财产留给她疼爱的小猫、金丝鸟等,以及她的女管家,并让她的...
    俗眼阅读 366评论 0 2