admin 管理员组文章数量: 1184232
使用端口模式启动浏览器
找到chromium安装位置,默认位置如下
C:\Users\user\AppData\Local\pyppeteer\pyppeteer\local-chromium\588429\chrome-win32
cmd 执行chrome.exe --disable-infobars --remote-debugging-port=9222
在打开的chromium 浏览器输入http://localhost:9222/json查看连接信息
[ {
"description": "",
"devtoolsFrontendUrl": "/devtools/inspector.html?ws=localhost:9222/devtools/page/6CB00490AAA1F35C7B5BCBE39D487B6B",
"id": "6CB00490AAA1F35C7B5BCBE39D487B6B",
"title": "随时随地使用 Chromium",
"type": "page",
"url": "http://localhost:9222/json",
"webSocketDebuggerUrl": "ws://localhost:9222/devtools/page/6CB00490AAA1F35C7B5BCBE39D487B6B"
} ]
webSocketDebuggerUrl就是要在程序中连接的地址(即下方测试demo中的连接参数browserWSEndpoint)
测试demo
import asyncio
import random
from pyppeteer.launcher import connect
useragents=['Mozilla/5.0 (Windows NT 6.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36','Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36','Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36','Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36','Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36','Mozilla/5.0 (Windows NT 6.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36','Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36','Mozilla/5.0 (Windows NT 6.2; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36']
async def main(url):
connect_params={
'browserWSEndpoint': 'ws://localhost:9222/devtools/page/6CB00490AAA1F35C7B5BCBE39D487B6B',
'logLevel':3,
}
browser = await connect(connect_params)
page = await browser.newPage() # 启动个新的浏览器页面
await page.setUserAgent(random.choice(useragents))
#设置页面超时时间
page.setDefaultNavigationTimeout(1000*60) #60s
#启用js
await page.setJavaScriptEnabled(True)
await page.setViewport({'width':1300,'height':750}) #设置界面
try:
await page.goto(url) # 访问登录页面
except Exception as e1:
print('e1:',e1)
await page.close()
await browser.close()
return
if __name__ == '__main__':
loop = asyncio.get_event_loop()
url = 'https://www.baidu'
m = main(url)
loop.run_until_complete(m)
版权声明:本文标题:pyppeteer 远程调试(连接已打开的浏览进行操作) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1765057530a3343727.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论