作者crazystyle63 (中二的逆袭)
看板Python
标题[问题] selenium爬虫抓表格资料
时间Thu May 6 00:26:58 2021
先谢谢您点进来。
小弟原本使用bs4来抓取网站表格资料
但发现时常多抓几次之後就无法抓到资料。
https://histock.tw/stock/brokerprofit.aspx?bno=1470
(欲抓取以上表格)
但後来发现可能是动态资料问题,或需要登入资料(如果是一个月的资料)
所以改用selenium来操作。
先付上我的程式码
https://imgur.com/xqE99nH.jpg
一直到38行都还算相当顺利
但是到了41~44行,是查找了其他资讯所得的结果
但是44行却因为网站资料的attribute为空白
遭遇无法抓到表格上资料的问题
请问该如何解决(或有更简易的表格抓取方式)
非常感谢
***更新***
目前确定问题出在登入。若仅使用当日资料,是确定可以抓到资料
(网页上也不用登入即可)
一旦查询当月资料,则需要登入才可。(否则抓到的内容没有登入後的资料)
但是这里遇到另一个问题,就是cookie的使用方式
目前也已参照书本的用法
却还是找不到资料
https://imgur.com/oWiRmn3.jpg
请问该如何修改呢?
谢谢您
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.165.157.40 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1620232020.A.FD1.html
1F:→ TakiDog: 确认回应 ststus code跟内容05/06 09:47
T大,有确定status 200,确定应该是登入问题
※ 编辑: crazystyle63 (1.165.157.40 台湾), 05/06/2021 16:40:48
2F:推 poototo: 用session登入,不必特别处理cookie05/06 16:46
3F:→ poototo: 登入成功後,session就直接打你要的页面05/06 16:47
4F:→ poototo: ss = requests.Session()05/06 16:48
5F:→ poototo: 用ss.get 或 post....05/06 16:48
谢谢P大,这个方法我再试试看(因为我漏了个方法)。目前我修改之後可确定可行的(也无使
6F:→ TakiDog: 看到你在其他地方po ,再回一下好了05/06 16:52
7F:→ TakiDog: 同楼上,用requests.session去处理登入,并且写好登入05/06 16:52
8F:→ TakiDog: requests可以做到,用不到selenium05/06 16:52
9F:→ TakiDog: 除了status code还是看内容,才能去检查response是不05/06 16:53
10F:→ TakiDog: 是有登入成功了,毕竟status code乱传的网页不少:D05/06 16:53
T大谢谢您,後来我舍弃selenium就是因为有检查到是登入的问题,经过修改之後目前是可以得到正确资料了
※ 编辑: crazystyle63 (1.165.157.40 台湾), 05/06/2021 17:10:50
※ 编辑: crazystyle63 (1.165.157.40 台湾), 05/06/2021 17:11:53
※ 编辑: crazystyle63 (1.165.157.40 台湾), 05/06/2021 17:12:35