无头浏览器

phantomJS是一款无头浏览器, 之前我们通过selenium操作PhantomJS来完成动态加载数据的加载,

现在PhantomJS已经停止更新,  不过可以使用谷歌浏览器的无头浏览器来代替PhantomJS来完成上述操作

使用谷歌无头浏览器的实例代码如下:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from time import sleep
chrome_options = Options()
chrome_options.add_argument(‘--headless‘)
chrome_options.add_argument(‘--disable-gpu‘)

bro = webdriver.Chrome(chrome_options=chrome_options)

bro.get(‘https://www.baidu.com‘)
sleep(3)

print(bro.page_source)
bro.save_screenshot(‘1.png‘)

bro.quit()

执行下拉滚动条操作

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time

chrome_options = Options()
chrome_options.add_argument(‘--headless‘)
chrome_options.add_argument(‘--disable-gpu‘)

bro = webdriver.Chrome(chrome_options=chrome_options)

bro.get(url=‘https://movie.douban.com/typerank?type_name=%E7%88%B1%E6%83%85&type=13&interval_id=100:90&action=‘)

time.sleep(3)

bro.save_screenshot(‘baidu/aiqing.png‘)

#让bro直行简单的js代码,模拟滚到到底部
js = ‘window.scrollBy(500,100000)‘
bro.execute_script(js)
time.sleep(3)

bro.save_screenshot(‘baidu/aiqing2.png‘)

#获取网页代码,保存到文件中
html = bro.page_source
with open(‘douban.html‘,‘w‘,encoding=‘utf8‘) as f:
    f.write(html)

bro.quit()

通过selenium加上下拉滚动条抓取懒加载图片

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time

chrome_options = Options()
chrome_options.add_argument(‘--headless‘)
chrome_options.add_argument(‘--disable-gpu‘)

bro = webdriver.Chrome(chrome_options=chrome_options)

bro.get(url=‘http://sc.chinaz.com/tupian/ribenmeinv.html‘)
time.sleep(2)
with open(‘lanjiazai.html‘, ‘w‘, encoding=‘utf8‘) as f:
    f.write(bro.page_source)
# bro.save_screenshot(‘lanjiazai.png‘)

bro.execute_script(‘window.scrollBy(0,10000)‘)
time.sleep(3)
with open(‘lanjiazai2.html‘, ‘w‘, encoding=‘utf8‘) as f:
    f.write(bro.page_source)
# bro.save_screenshot(‘lanjiazai2.png‘)
time.sleep(1)

bro.close()

原文地址:https://www.cnblogs.com/zhangjian0092/p/11407618.html

时间: 2024-10-11 20:14:36

无头浏览器的相关文章

爬虫之 图片懒加载, selenium , phantomJs, 谷歌无头浏览器

一.图片懒加载 什么是图片懒加载? 案例分析:抓取站长素材http://sc.chinaz.com/中的图片数据 #!/usr/bin/env python # -*- coding:utf-8 -*- import requests from lxml import etree if __name__ == "__main__": url = 'http://sc.chinaz.com/tupian/gudianmeinvtupian.html' headers = { 'User-

你是否了解谷歌的无头浏览器?

无头浏览器即headless browser,是一种没有界面的浏览器.既然是浏览器那么浏览器该有的东西它都应该有,只是看不到界面而已. Python中selenium模块中的PhantomJS即为无界面浏览器(无头浏览器):是基于QtWebkit的无头浏览器. 原文地址:https://www.cnblogs.com/sea-stream/p/11192547.html

07-selenium、PhantomJS(无头浏览器)

selenium(自动化测试工具可用于在爬虫中解决js动态加载问题) 简介(本质就是模仿浏览器工作) Selenium 是什么?一句话,自动化测试工具.它支持各种浏览器,包括 Chrome,Safari,Firefox 等主流界面式浏览器,如果你在这些浏览器里面安装一个 Selenium 的插件,那么便可以方便地实现Web界面的测试.换句话说叫 Selenium 支持这些浏览器驱动.话说回来,PhantomJS(无头浏览器)不也是一个浏览器吗,那么 Selenium 支持不?答案是肯定的,这样二

爬虫04 /asyncio、selenium\规避检测、动作链、无头浏览器

目录 4.asyncio.selenium\规避检测.动作链.无头浏览器 1. 协程asyncio 2. aiohttp多任务异步爬虫 3. selenium的使用 4. 动作链 5. 12306模拟登录分析 6. selenium规避风险 7. 无头浏览器 总结: 4.asyncio.selenium\规避检测.动作链.无头浏览器 1. 协程asyncio 协程基础 特殊的函数 就是async关键字修饰的一个函数的定义 特殊之处: 特殊函数被调用后会返回一个协程对象 特殊函数调用后内部的程序语

CentOS7下python3 selenium3 使用Chrome的无头浏览器 截取网页全屏图片

前言 selenium是一个模拟浏览器的自动化执行框架,但是如果每次执行都要打开浏览器来处理任务的话,效率上都不高.最重要的是如果安装在Centos7服务器环境下,打开浏览器来模拟操作是更加不合适的,尤其是碰上需要截取网页图片这样的需求. 这时候就要考虑使用Chrome的无头浏览器模式了.所谓的无头浏览器模式也就是不需要打开浏览器,但是却可以起到模拟打开浏览器的执行效果,一切无界面执行. 下面来看看如果安装部署到执行. 1.安装chrome 1.1 添加google的repo源 vim /etc

selenium3使用谷歌无头浏览器、截图

无头浏览器即为Headless Browser,是没有图形用户界面的web浏览器,通常是通过编程或命令行界面来控制.在正常使用selenium的时候,你必须担心CPU和/或内存的使用.这两种方式都与必须从被请求的URL中显示显示的图形的浏览器相关联.当使用一个无头的浏览器时,我们不用担心这个.因此,我们可以预期我们编写的脚本的内存消耗会降低,执行速度也会更快.当有的人说,那我没法看到浏览器响应的过程,我不能在这边盯着浏览器自己执行我的用例...喔犒!写自动化本来就是为了效率的,做截图就可以了嘛,

seleniumChrom无头浏览器

---------------------- 谷歌无头浏览器 ----------------------------- import time from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.sup

爬虫使用无头浏览器

python + selenium + webdriver chrome ff opera等浏览器都有webdriver提供. 可惜还是依赖selenium. 以下以chrome为例. 1 centos7上安装chrome centos6.5不支持.已无法安装现在的chrome. win10可以用.所以本地调试没有问题. 1. 配置yum源 在目录 /etc/yum.repos.d/ 下新建文件 google-chrome.repo #vim /ect/yum.repos.d/google-ch

chrome headless 无头浏览器 应用

1. 根据html生成pdf chrome.exe --headless --disable-gpu --print-to-pdf ...../index.html 2. puppeteer --- nodejs chrome headless 操作库(文档) 这个库可以在nodejs实现 绝大部分的浏览器动作,截图.爬虫..... 具体代码看官方文档,十分详尽 原文地址:https://www.cnblogs.com/amiezhang/p/10405404.html