설치 : mitmproxy를 설치 PIP
새 스크립트를 작성
스크립트 코드 :
1 행 mitmproxy 반입이 ctx를 2 3 injected_javascript를 = '' ' 4 // 겹쳐 맞춤 게터 사용하는`languages` 속성 5 Object.defineProperty (네비게이터, "언어", { 6 얻을 : 함수 () { 7 창 [ "에서 zh -CN ","zh "로 설정"에서 zh-TW ","EN-US ","EN "], 8 } 9 }); 10 // 사용자 정의 게터를 사용하도록`plugins` 속성을 덮어 씁니다. 11 Object.defineProperty (네비게이터 '플러그'{ 12 GET () => [1, 2, 3, 4, 5, 13 }); Object.defineProperty (네비게이터 'webdriver'{ 16 GET () => 거짓, 17 }); 18 //은 크롬 테스트를 통과. 19 우리가 시험에 필요로하는 // 우리는 더 깊이로이 조롱 할 수 있습니다. 20 window.navigator.chrome = { 21 런타임 {} 22 // 등 23 }; (24) //이 권한 테스트를 통과. 25 CONST originalQuery = window.navigator.permissions.query; 26 window.navigator.permissions.query = (파라미터) => ( 27 parameters.name === "알림"? 28 Promise.resolve ({주 : Notification.permission}) 29 originalQuery (파라미터) 30 ); (31) '' ' 32 33 데프 응답 (흐름) : 34 # 1 만 HTML 콘텐츠 (200 개)의 응답을 처리한다. (35) 만약 하지 == 200 flow.response.status_code : 36 창 37 38 #을 자바 스크립트를 포함하는 스크립트 태그 분사. 39 HTML = flow.response.text 40 HTML html.replace = ( ' <head> " , " <head> <script> S % </ script> ' % injected_javascript) 41 = flow.response.text STR (HTML)를 42 인 (ctx.log.info ' 삽입 성공 ' ) 43
그런 다음 실행 mitmdump
mitmdump -s xxxx.py
기본값은 8080의 webDriver 프록시 127.0.0.1:8080를 설정
그럼 당신은 모니터링 및 셀레늄의 특성을 수정할 수 있습니다.