最近爬虫遇到很棘手的事情,就是遇到了动态网站。这种情况下,靠原来的抓包无法找到线索,并解决抓取问题。这时候selenium 便出现了在我的视野里面。

首先是安装selenium,mac下很简单

pip install Selenium==3.0.1 据说这个版本问题少

安装好了 就开始学习使用它吧

  1 # -*- coding: utf-8 -*-
  2 from selenium import webdriver
  3 from selenium.webdriver.common.keys import Keys
  4 import time
  5  
  6 #driver = webdriver.Firefox(executable_path='/User/cgs/cgs/firefoxDriver/geckodriver')
  7 driver = webdriver.Firefox()
  8 driver.get('http://www.baidu.com')
  9 assert u"百度" in driver.title
 10 elem = driver.find_element_by_name('wd')
 11 elem.clear()
 12 elem.send_keys(u"网络爬虫")
 13 elem.send_keys(Keys.RETURN)
 14 time.sleep(3)
 15 assert u"网络爬虫" not in driver.page_source
 16 driver.close()


这时候运行就会报错了,具体错误如下


mac下的解决方法就是

1.安装火狐
2.从mozilla/geckodriver下载geckodriver-v0.13.0-macos.tar.gz
3.解压缩,把解压缩后的文件放到/usr/local/bin里面
4.现在代码可以跑起来了

GitHub 加速计划 / ge / geckodriver
46
2
下载
WebDriver for Firefox
最近提交(Master分支:2 个月前 )
53fea8f4 1 年前
f911bb4c 1 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐