Re: [问题] python 爬取pchome资料

楼主: BigBank ( )   2016-08-06 00:28:50
各位前辈好,最近也在尝试爬pchome,虽然知道是javascript,但还是不太能解决
爬文后很幸运挖到这篇 也照了这不是ptt大的code测试
推 Thisisnotptt: 刚刚试了一下,应该是JS的问题,所以我改用selenium 04/11 13:38
→ Thisisnotptt: 之后就搞定了 http://codepad.org/QeZAV5HO 04/11 13:39
但同样的code 执行好多次才能成功一次 是我的电脑业障重吗OAQQ
其余的失败也没什么讯息 就是只抓回空壳 (我猜应该是没有成功执行js?)
我目前要做的 是已经有一堆pchome网址 想要从网址爬回对应商品
发现虽然head里的meta就有了 但也不知道该如何简单的只抓回这个部分
所以总结想请问各位前辈:
1.没办法每次都抓回网页,是pchome的防范机制吗?该何解QQ
2.还是说有更简单的方法可以只抓回head那个部分,觉得抓回整个网站有点overkilled
但现在就连硬要抓整个网站回来都做不到...( ̄▽ ̄#)﹏﹏
感谢各位前辈指点迷津OTZ
作者: Thisisnotptt (这不是PTT)   2015-04-11 13:38:00
刚刚试了一下,应该是JS的问题,所以我改用selenium之后就搞定了 http://codepad.org/QeZAV5HO
作者: ripple0129 (perry tsai)   2016-08-06 05:00:00
其实就很单纯的观察封包伪装成浏览器送封包到server
作者: Thisisnotptt (这不是PTT)   2016-08-06 20:46:00
假如是偶尔成功 那可能是要加入延迟让网页跑完让javascript的内容被加载之后才抓得到 因为se是个浏览器 要给他点时间处理试试看加这个 http://tinyurl.com/he7h8aa 让他完全加载之后再进行抓取假如要摆脱 se 可以用post request的方式直接抓取内容 但是我之前对pchome采post/request的方式都一不太成功 se 搞起来比较方便就是了 缺点就是慢跟肥刚刚试了一下 request 的方式 OK了 不晓得之前是什么问题卡住 总之应该还行 一样要加点delay会比较稳http://codepad.org/25lxbLvn

Links booklink

Contact Us: admin [ a t ] ucptt.com