zoukankan      html  css  js  c++  java
  • selenium设置chrome和phantomjs的请求头信息

    selenium设置chrome和phantomjs的请求头信息

    出于反爬虫也好-跳转到手机端页面也好都需要设置请求头,那么如何进行呢?

    目录

    • 一:selenium设置phantomjs请求头:
    • 二:selenium设置chrome请求头:
    • 三:selenium设置chrome–cookie:
    • 四:selenium设置phantomjs-图片不加载:

    一:selenium设置phantomjs请求头:

    可以复制下列代码运行,会访问https://httpbin.org/get?show_env=1  该网站能呈现你请求的头信息

    来源于知乎回答

    # !/usr/bin/python
    # -*- coding: utf-8 -*-
    
    from selenium import webdriver
    from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
    
    dcap = dict(DesiredCapabilities.PHANTOMJS)
    dcap["phantomjs.page.settings.userAgent"] = (
    "Mozilla/5.0 (Linux; Android 5.1.1; Nexus 6 Build/LYZ28E) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.23 Mobile Safari/537.36"
    )
    driver = webdriver.PhantomJS(desired_capabilities=dcap)
    driver.get("https://httpbin.org/get?show_env=1")
    driver.get_screenshot_as_file('01.png')
    driver.quit()
    
    
    链接:https://www.zhihu.com/question/35547395/answer/106652782
    

    二:selenium设置chrome请求头:

    来源http://www.cnblogs.com/TTyb/p/6128323.html 感恩原作者

    如代码

    # !/usr/bin/python
    # -*- coding: utf-8 -*-
    
    from selenium import webdriver
    # 进入浏览器设置
    options = webdriver.ChromeOptions()
    # 设置中文
    options.add_argument('lang=zh_CN.UTF-8')
    # 更换头部
    options.add_argument('user-agent="Mozilla/5.0 (iPod; U; CPU iPhone OS 2_1 like Mac OS X; ja-jp) AppleWebKit/525.18.1 (KHTML, like Gecko) Version/3.1.1 Mobile/5F137 Safari/525.20"')
    browser = webdriver.Chrome(chrome_options=options)
    url = "https://httpbin.org/get?show_env=1"
    browser.get(url)
    browser.quit()

    三:selenium设置chrome–cookie:

    cookie用于模拟登陆

    # !/usr/bin/python
    # -*- coding: utf-8 -*-
    
    from selenium import webdriver
    browser = webdriver.Chrome()
    
    url = "https://www.baidu.com/"
    browser.get(url)
    # 通过js新打开一个窗口
    newwindow='window.open("https://www.baidu.com");'
    # 删除原来的cookie
    browser.delete_all_cookies()
    # 携带cookie打开
    browser.add_cookie({'name':'ABC','value':'DEF'})
    # 通过js新打开一个窗口
    browser.execute_script(newwindow)
    input("查看效果")
    browser.quit()

    四:selenium设置phantomjs-图片不加载:

    from selenium import webdriver
    
    options = webdriver.ChromeOptions()
    prefs = {
        'profile.default_content_setting_values': {
            'images': 2
        }
    }
    options.add_experimental_option('prefs', prefs)
    browser = webdriver.Chrome(chrome_options=options)
    
    # browser = webdriver.Chrome()
    url = "http://image.baidu.com/"
    browser.get(url)
    input("是否有图")
    browser.quit()

    效果如图:

    996148-20161203114330787-1216998587

    转载地址: 
    https://www.urlteam.org/2017/02/selenium%E8%AE%BE%E7%BD%AEchrome%E5%92%8Cphantomjs%E7%9A%84%E8%AF%B7%E6%B1%82%E5%A4%B4%E4%BF%A1%E6%81%AF/

  • 相关阅读:
    IIS配置桌面上的文件报错,可能是含有中文字符
    GridView序号
    图片处理函数(自适应缩略图datatable中添加缩略图像)
    linqtoobject
    数据库存取图片二进制数据
    反射
    jquery
    加干扰字符
    Doc的窗口就创建一个,如果已经存在就激活那个窗口,不存在就建立Doc(转自CSDN)
    VC++中使用内存映射文件处理大文件(转)
  • 原文地址:https://www.cnblogs.com/it-tsz/p/10591727.html
Copyright © 2011-2022 走看看