作者liquidbox (树枝摆摆)
看板Python
标题[问题] selenium页数未更新及重复笔数
时间Tue Feb 19 20:05:28 2019
想请教一些问题,我想用Selenium抓小米官网的经销商,
希望抓完後,用里头的资料做成地图
爬取过程中却不时出现StaleElementReferenceException,出现页数不定,
快的话第2页出现,幸运的话40、50页後出现,
我猜可能是元素载入不完全,於是想等「下一页」元素可以点选後再执行後面的动作,
甚至我把WebDriverWait的delay值设为200
问题一:我设的WebDriverWait().until()似乎没有发挥作用
我以例外处理方式把无法正常爬取的页数print出来,
这个例外处理很粗糙,但如果不使用例外处理,
程式只要遇到StaleElementReferenceException就会中断,
而我发现,我print出来的无法正常处理的页数有数百页
实际用Excel分析重复笔数後发现,
我抓到的很多变数address根本重复,甚至可以重复数十笔
问题二:我搞不太懂哪个动作让我抓到了重复的资料
难道是页面未更新、导致定位出来的元素仍是上个网页的资料吗?
还是说我遇到反爬了?
这整个程式我自己觉得好像没什麽问题,但过程中还蛮跌跌撞撞的
因为我的程式码会超过批踢踢的画面长度,造成阅读不便跟理解困难
所以我放在云端连结,若这样做反而让大家更不方便在此道歉
https://1drv.ms/t/s!AuQERVaW1DVCgv8sqCcfl9FkaayNGg
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.115.123.83
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1550577930.A.5C4.html
1F:→ s860134: 问题在例外处理 当发生时你的动作是什麽?而你想怎麽处理 02/19 20:39
2F:推 rexyeah: selenium太慢了 我看他request url是有规则 02/19 21:19
3F:推 utap2001: 我最近用selenium也是出现很多错误,比如说index out o 02/25 19:06
4F:→ utap2001: f range,用到真的很想翻桌 02/25 19:06
5F:→ utap2001: 很多网页的元素都抓不到,不知道driver有什麽问题 02/25 19:08