1、
http://***.piao***wang.com的登錄界面
2、
import asyncio
from pyppeteer import launch
from pyquery import PyQuery as pq
width, height = 1366, 768
async def main():
? ? exepath = 'C:/Users/lee2fat/AppData/Local/Google/Chrome/Application/chrome.exe'
? ? browser = await launch({'executablePath': exepath, 'headless': False, 'slowMo': 30, 'devtools': True }, args=[f'--window-size={width},{height}','--disable-infobars', '--no-sandbox'])?
? ? #browser = await launch({'executablePath': exepath})
? ? #browser = await launch()
? ? page = await browser.newPage()
? ? await page.evaluate('''() =>{ Object.defineProperties(navigator,{ webdriver:{ get: () => false } }) }''')? ?
? ? await page.setViewport({'width': width, 'height': height})
? ? await page.goto('http://***.p***x**w****.com/register?******=1')
? ? await page.setUserAgent(
? ? ? ? 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36')
? ? #'https://www.q*c**c**.com/****_login?b**k=%**'
? ? await page.evaluate('''() =>{ Object.defineProperties(navigator,{ webdriver:{ get: () => false } }) }''')
? ? await asyncio.sleep(300)
asyncio.get_event_loop().run_until_complete(main())
有概率失敗,不知道是不是pyppeteer 的問題,下次改?puppeteer 試試
某企** 也是概率失敗
版本 72.0.3626.109(正式版本) (64 位) 概率成功
版本 80.0.3987.106(正式版本) (64 位) 概率成功
3、注意點
3.1 'devtools': True 很重要,必須設(shè)置,否則80版本會出錯
3.2 await page.evaluate('''() =>{ Object.defineProperties(navigator,{ webdriver:{ get: () => false } }) }''')??
兩次設(shè)置貌似都很重要,做了不太完全的驗證