zoukankan      html  css  js  c++  java
  • chromedriver+selenium headless尝试

    去年做的几个selenium+firefox, 今年原爬取网站有变动,陆陆续续修改了几个,想到了前段时间看到的headless,就试着改造了下.

    //原来想用phantomJS,但说实话,坑实在大,对文件下载,尤其是客户端实时文件下载很不友好,所以一开始就放弃了phantomJS.

    原selenium 2.5.3 + firefox 45.

    最新selenium 3.11.0, 想着firefox用的有点吐,试试chrome.

    chromdriver 2.37  直接放到项目目录下,硬启动```

    代码如下:

    def Conf_Chrome():
    chromedriverpath = 'chromedriver.exe'
    chrome_options = Options()
    dir = Get_Download_Dir()
    prefs = {
    'profile.default_content_settings.popups': 0,
    'download.default_directory': dir,
    "profile.managed_default_content_settings.images": 2
    }
    chrome_options.add_experimental_option("prefs", prefs)
    # chrome_options.add_argument('--proxy-server=http://')
    chrome_options.add_argument('--headless')

    browser = webdriver.Chrome(executable_path=chromedriverpath, chrome_options=chrome_options)

    print u"浏览器初始配置完成"
    logging.info(u"浏览器初始配置完成")
    return browser

    试了下,后续操作代码执行正常,可惜headless状态下,下载文件在本地没有存储,注销后,正常下载存储.

    研究了下网络上已存在的帖子,说法是下载的文件是服务端实时生成的,没有固定url,headless状态下,下载失败.

  • 相关阅读:
    Joshua Bloch错了? ——适当改变你的Builder模式实现
    集成基于OAuth协议的单点登陆
    集成基于CAS协议的单点登陆
    数据库设计中的Soft Delete模式
    完成C++不能做到的事
    ExtJS in Review
    DTO – 服务实现中的核心数据
    保存好你的密码 —— 从芝麻金融被攻破说起
    WPF
    C# 反编译防范
  • 原文地址:https://www.cnblogs.com/ylpb/p/8708088.html
Copyright © 2011-2022 走看看