首页 > 其他分享 >Selenium接管已经打开的浏览器并爬取数据

Selenium接管已经打开的浏览器并爬取数据

时间:2023-07-17 11:47:58浏览次数:37  
标签:浏览器 -- 接管 cmd Selenium add options

    """
    P.S:需要接管现有浏览器
    
   ** 使用步骤:
    1、打开浏览器,设置好远程调试端口,并扫描登录淘宝。
        chrome.exe --remote-debugging-port=9333 --user-data-dir="G:\spider_taobao"**
        
    2、运行程序,自动采集数据
    
    """
def main():
    service = ChromeService(executable_path=DIRVER_PATH)

    options = webdriver.ChromeOptions()

    # 添加插件运行
    # options.add_argument(r"--load-extension=C:\Users\Administrator\Desktop\爬虫\XPath-Helper_v2.0.2.crx")
    # options.add_extension(r"C:\Users\Administrator\Desktop\爬虫\XPath-Helper_v2.0.2.crx")

    # 接管后这个参数会报错,不要设置...
    # options.add_experimental_option("excludeSwitches", ["enable-automation"])
    # options.add_experimental_option("useAutomationExtension", False)

 
    **# 接管已经打开的浏览器
    options.add_experimental_option("debuggerAddress", "127.0.0.1:9333")**

    # 防止检测到selenium
    options.add_argument("--disable-blink-features")
    options.add_argument("--disable-blink-features=AutomationControlled")

    driver = webdriver.Chrome(service=service, options=options)

    with open(STEALTH_JS) as f:
        js = f.read()

    driver.execute_cdp_cmd(
        cmd="Page.addScriptToEvaluateOnNewDocument",
        cmd_args={
            "source": js
        }
    )

标签:浏览器,--,接管,cmd,Selenium,add,options
From: https://www.cnblogs.com/juelian/p/17559604.html

相关文章

  • selenium滚动加载数据解决方案
    有些网站时一直滚动就会加载新数据的,在selenium中解决方法:defloaddata_by_scroll(self,driver):js='returndocument.body.scrollHeight;'#获取当前高度check_height=driver.execute_script(js)whileTrue:#先滚动到最底部,如果能继续加载更......
  • Selenium查找元素、元素的属性和方法
    查找元素官方文档:https://www.selenium.dev/documentation/webdriver/elements/locators/一般通过find_element或者find_elements方法获取元素后的类型是WebElement或该类型的列表。语法:#查找第一个符合条件的WebElement元素并返回。driver.find_element(By类型,"查找的语......
  • js:http-vue-loader从浏览器直接引入vue文件
    docgithub:https://github.com/FranckFreiburger/http-vue-loaderindex.html<!doctypehtml><htmllang="en"><head><scriptsrc="https://cdn.bootcdn.net/ajax/libs/vue/2.6.14/vue.min.js"></script><s......
  • c#.net实现浏览器端大文件分片上传
    ​ 前言文件上传是一个老生常谈的话题了,在文件相对比较小的情况下,可以直接把文件转化为字节流上传到服务器,但在文件比较大的情况下,用普通的方式进行上传,这可不是一个好的办法,毕竟很少有人会忍受,当文件上传到一半中断后,继续上传却只能重头开始上传,这种让人不爽的体验。那有没有......
  • 浏览器调试显示被 CORS 策略阻止
     详细报错indexTESTcopy.html:1AccesstoXMLHttpRequestat'file:///E:/WebServer/xxx'fromorigin'null'hasbeenblockedbyCORSpolicy:Crossoriginrequestsareonlysupportedforprotocolschemes:http,data,isolated-app,chrome-exte......
  • vue.js浏览器插件
    提取地址:链接:https://pan.baidu.com/s/1Uf9yZaQfRQ1r2JvOxXX50A?pwd=l3iw提取码:l3iw加载已解压的扩展程序  ......
  • AJAX请求,响应头有set-cookie但浏览器不能写入cookie问题解决!
    开幕雷击:AJAX就不是干这个ajax只有向服务器发送请求时带上cookie的功能可选。不存在ajax向服务器get的时候带回来cookie的功能。解决把AJAX代码改成原始的js代码来完成需求:正确的jsdocument.addEventListener('DOMContentLoaded',function(){document.querySelector('......
  • 88.检测浏览器版本版本有哪些方式
    88.检测浏览器版本版本有哪些方式?检测浏览器版本一共有两种方式:一种是检测window.navigator.userAgent的值,但这种方式很不可靠,因为userAgent可以被改写,并且早期的浏览器如ie,会通过伪装自己的userAgent的值为Mozilla来躲过服务器的检测。第二种方式是功能检测,根据每......
  • 59.什么是浏览器的同源政策
    59.什么是浏览器的同源政策?我对浏览器的同源政策的理解是,一个域下的js脚本在未经允许的情况下,不能够访问另一个域的内容。这里的同源的指的是两个域的协议、域名、端口号必须相同,否则则不属于同一个域。同源政策主要限制了三个方面第一个是当前域下的js脚本不能够访问......
  • 解决浏览器自动将http跳转至https导致无法访问的问题
      最近在宝塔面板申请免费的SSL证书后,部署证书的80端口下的网站可以通过https正常访问,但其他未部署证书的端口也被强制跳转至https请求,导致浏览器提示不安全从而无法访问。宝塔的8888端口也不能访问,当时那是一个慌,当我尝试了各种方法,如重新放行443端口、重新配置nginx反向代理、......