Web Scraping with Python:使用 Selenium 给当前网页截屏
2017-12-04 17:14
495 查看
一、引言
这是我在学习 《Web Scraping with Python》一书的第 13 章的时候学习到的内容。因为可以使用 Python 给当前网页截屏的话,也就意味着我们在书写自己的爬虫程序的时候,可以爬到自己感兴趣的网页的时候进行截屏处理,这将是一件非常有意义的事情:)这里,作者使用了 Selenium 库。这是 Python 的一个第三方库,需要自行下载,是用于模拟网页中 JavaScript 执行的库。
另外,还需要下载一个虚拟浏览器 PhantomJS,需要使用这个虚拟浏览器配合我们的 Selenium 完成我们网页截屏的需求。
有关上述两个概念,可以自行百度,这里也就不再赘述了。
二、代码
这里直接上代码,简短有力:from selenium import webdriver driver = webdriver.PhantomJS(executable_path='D:\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe') driver.implicitly_wait(5) driver.get('https://github.com/wangying2016') driver.get_screenshot_as_file('github.png')
这里,我们从 selenium 中 import 了 webdriver,用于运行我们的 PhantomJS 虚拟浏览器,注意 executable_path 中写入我们的 phantomjs.exe 的实际地址。
之后,PhantomJS 等待了 5 秒钟,用于等待网页 JavaScript 等等操作结束。
最后,我们调用了 get_screenshot_as_file 函数,进行了截屏处理,并且将我们截取到的截图存放在了运行目录下,命名为 github.png。
这里是截屏结果:
可见,我们截屏得到的结果,是网页的全截屏,也就是说忽略了浏览器窗口大小限制的全尺寸截屏(想想这意味着什么,你可以一次截屏一篇博客,你可以一次截屏一篇新闻 T_T)。
这是一段非常有用的代码,希望能够给大家一点帮助 ^_^
相关文章推荐
- 阅读OReilly.Web.Scraping.with.Python.2015.6笔记---找出网页中所有的href
- Web Scraping with Python: 使用 Python 爬 GitHub Star 数
- Web Scraping with Python:使用 Python 导出 CSDN 博客全部文章(保留样式)和附带图片
- Web Scraping with Python: 使用 Python 爬 CSDN 博客
- 《web scraping with python》笔记--穿越网页表单与登录窗口进行采集
- Web Scraping with Python: 使用 Python 爬 Baidu 关键词
- 16_python_练习题——使用webdriver获取当前页面截屏以及滑动页面
- Python抓取网页动态数据——selenium webdriver的使用
- Web Scraping with Python: 使用 Python 下载 CSDN 博客图片
- 使用R语言和XML包抓取网页数据-Scraping data from web pages in R with XML package
- selenium_webdriver(python)获取元素属性值,浏览器窗口控制、网页前进后退,title/url打印
- Web Scraping with Python 学习笔记7
- Web Scraping with Python 读书笔记
- Python使用Selenium和PhantomJS解析动态JS的网页
- Web Scraping with Python 学习笔记8
- Android使用WebView浏览有声音或者视频的网页,关闭WebView或者当前界面之后,声音或者视频不停止
- Web Scraping with Python读书笔记及思考
- 《Web Scraping with Python》读书笔记
- selenium+python的WebDriverWait使用方法
- Web Scraping with Python 学习笔记6