selenium - 请教一下 Python 爬虫工具
问题描述
1)我要抓的是 Instagram 某明星的粉丝2)Instagram pc 站使用了大量的 js 渲染3)没写过爬虫,老板明天就要数据
我目前使用的是BeautifulSoup, selenium 和phantomjs
代码 demo 大概是
driver = webdriver.PhantomJS(self.browser)driver.get(self.url)driver.implicitly_wait(3)element = driver.find_element_by_class_name('_s53mj')element.click()html = driver.page_sourcesoup = BeautifulSoup(html)
问题是:1) 我不知道click 有没有执行成功, click 的元素对不对, driver 好像没有返回值给我参考2) 即使 click 成功了, 但是他是不是只调了 js里的 click() 方法,并没有触发 target 怎么办3)我不知道是先渲染page_source, 还是 应该先 click, 假设执行成功了 click, 是不是也不会再 source 里返回了
啊, 谢各位爬虫大佬了
问题解答
回答1:说的是什么意思?百思不得其解啊。。。
selenium自动化,click能模仿用户点击,就跟你自己在页面上点击一样,一切都在虚拟浏览器驱动中进行。
看你的业务逻辑啊。。。比如有些数据要点击后才有,那就先click再获取源代码。
相关文章:
1. nignx - docker内nginx 80端口被占用2. javascript - canvas 裁剪空白区域3. docker网络端口映射,没有方便点的操作方法么?4. docker绑定了nginx端口 外部访问不到5. angular.js - angular内容过长展开收起效果6. docker不显示端口映射呢?7. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?8. javascript - nodejs调用qiniu的第三方资源抓取,返回401 bad token,为什么9. debian - docker依赖的aufs-tools源码哪里可以找到啊?10. docker api 开发的端口怎么获取?
