android 7.0之後抓包unknown解決方法
Selenium操作瀏覽器是不載入任何配置的,網上找了半天,關於Firefox載入配置的多點,Chrome資料很少,下面是關於載入Chrome配置的方法:
一、載入所有Chrome配置
用Chrome位址列輸入chrome://version/,檢視自己的“個人資料路徑”,然後在瀏覽器啟動時,呼叫這個配置檔案,程式碼如下:
1 2 3 4 5 |
#coding=utf-8
from selenium import webdriver
option = webdriver.ChromeOptions()
option.add_argument( '--user-data-dir=C:\Users\Administrator\AppData\Local\Google\Chrome\User Data' ) #設定成使用者自己的資料目錄
driver = webdriver.Chrome(chrome_options = option)
|
二、修改瀏覽器的User-Agent來偽裝你的瀏覽器訪問手機m站
1 2 3 4 5 6 |
#coding=utf-8
from selenium import webdriver
option = webdriver.ChromeOptions()
option.add_argument( '--user-agent=iphone' )
driver = webdriver.Chrome(chrome_options = option)
driver.get( 'http://www.taobao.com/' )
|
三、瀏覽器啟動時安裝crx擴充套件
1 2 3 4 5 6 |
#coding=utf-8
from selenium import webdriver
option = webdriver.ChromeOptions()
option.add_extension( 'd:\crx\AdBlock_v2.17.crx' ) #自己下載的crx路徑
driver = webdriver.Chrome(chrome_options = option)
driver.get( 'http://www.taobao.com/' )
|
可以去https://sites.google.com/a/chromium.org/chromedriver/capabilities檢視更多,或者去http://stackoverflow.com/查詢。
下邊是收集的一些配置資訊:
一些Chrome的位址列命令(這些命令會不停的變動,所有不一定都是好用的)
在Chrome的瀏覽器位址列中輸入以下命令,就會返回相應的結果。這些命令包括檢視記憶體狀態,瀏覽器狀態,網路狀態,DNS伺服器狀態,外掛快取等等。
about:version - 顯示當前版本
about:memory - 顯示本機瀏覽器記憶體使用狀況
about:plugins - 顯示已安裝外掛
about:histograms - 顯示歷史記錄
about:dns - 顯示DNS狀態
about:cache - 顯示快取頁面
about:gpu -是否有硬體加速
about:flags -開啟一些外掛 //使用後彈出這麼些東西:“請小心,這些實驗可能有風險”,不知會不會搞亂俺的配置啊!
chrome://extensions/ - 檢視已經安裝的擴充套件
其他的一些關於Chrome的實用引數及簡要的中文說明(使用方法同上,當然也可以在shell中使用)
–user-data-dir=”[PATH]” 指定使用者資料夾User Data路徑,可以把書籤這樣的使用者資料儲存在系統分割槽以外的分割槽。
–disk-cache-dir=”[PATH]“ 指定快取Cache路徑
–disk-cache-size= 指定Cache大小,單位Byte
–first run 重置到初始狀態,第一次執行
–incognito 隱身模式啟動
–disable-javascript 禁用Javascript
--omnibox-popup-count="num" 將位址列彈出的提示選單數量改為num個。我都改為15個了。
--user-agent="xxxxxxxx" 修改HTTP請求頭部的Agent字串,可以通過about:version頁面檢視修改效果
--disable-plugins 禁止載入所有外掛,可以增加速度。可以通過about:plugins頁面檢視效果
--disable-javascript 禁用JavaScript,如果覺得速度慢在加上這個
--disable-java 禁用java
--start-maximized 啟動就最大化
--no-sandbox 取消沙盒模式
--single-process 單程序執行
--process-per-tab 每個標籤使用單獨程序
--process-per-site 每個站點使用單獨程序
--in-process-plugins 外掛不啟用單獨程序
--disable-popup-blocking 禁用彈出攔截
--disable-plugins 禁用外掛
--disable-images 禁用影象
--incognito 啟動進入隱身模式
--enable-udd-profiles 啟用賬戶切換選單
--proxy-pac-url 使用pac代理 [via 1/2]
--lang=zh-CN 設定語言為簡體中文
--disk-cache-dir 自定義快取目錄
--disk-cache-size 自定義快取最大值(單位byte)
--media-cache-size 自定義多媒體快取最大值(單位byte)
--bookmark-menu 在工具 欄增加一個書籤按鈕
--enable-sync 啟用書籤同步
常用:
–single-process 單程序執行Google Chrome
–start-maximized 啟動Google Chrome就最大化
–disable-java 禁止Java
–no-sandbox 非沙盒模式執行
全部:(下面的沒有進行翻譯,仔細看下應該都看得懂. ~ ~)
–disable-hang-monitor
Suppresses hang monitor dialogs in renderer processes.
–disable-metrics
Completely disables UMA metrics system.
–disable-metrics-reporting
Disables only the sending of metrics reports. In contrast to kDisableMetrics, this executes all the code that a normal client would use for reporting, except the report is dropped rather than sent to the server. This is useful for finding issues in the metrics code during UI and performance tests.
–assert-test
Causes the browser process to throw an assertion on startup.
–renderer-assert-test
Causes the renderer process to throw an assertion on launch.
–crash-test
Performs a crash test when the browser is starte.
–renderer-crash-test
Causes the renderer process to crash on launch.
–renderer-startup-dialog
Use this argument when you want to see the child processes as soon as Chrome start.
–plugin-startup-dialog
Causes the plugin process to display a dialog on launch.
–testshell-startup-dialog
Causes the test shell process to display a dialog on launch.
–plugin-launcher
Specifies a command that should be used to launch the plugin process. Useful
for running the plugin process through purify or quantify. Ex:
–plugin-launcher=”path\to\purify /Run=yes.
–plugin-launche.
–channel
The value of this switch tells the child process which
IPC channel the browser expects to use to communicate with it.
–testing-channel
The value of this switch tells the app to listen for and broadcast
testing-related messages on IPC channel with the given ID.
–homepage
The value of this switch specifies which page will be displayed
in newly-opened tabs. We need this for testing purposes so
that the UI tests don't depend on what comes up for http://google.com.
–start-renderers-manually
When this switch is present, the browser will throw up a dialog box
asking the user to start a renderer process independently rather
than launching the renderer itself. (This is useful for debugging..
–renderer
Causes the process to run as renderer instead of as browser.
–renderer-path
Path to the executable to run for the renderer subproces.
–plugin
Causes the process to run as plugin hos.
–single-process
Runs the renderer and plugins in the same process as the browse.
–process-per-tab
Runs each set of script-connected tabs (i.e., a BrowsingInstance) in its own
renderer process. We default to using a renderer process for each
site instance (i.e., group of pages from the same registered domain with
script connections to each other).
–process-per-site
Runs a single process for each site (i.e., group of pages from the same
registered domain) the user visits. We default to using a renderer process
for each site instance (i.e., group of pages from the same registered
domain with script connections to each other).
–in-process-plugins
Runs plugins inside the renderer proces.
–no-sandbox
Runs the renderer outside the sandbox.
–safe-plugins
Runs the plugin processes inside the sandbox.
–trusted-plugins
Excludes these plugins from the plugin sandbox.
This is a comma separated list of plugin dlls name and activex clsid.
–test-sandbox
Runs the security test for the sandbox.
–user-data-dir
Specifies the user data directory, which is where the browser will look
for all of its state.
–app
Specifies that the associated value should be launched in “application” mode.
–upload-file
Specifies the file that should be uploaded to the provided application. This
switch is expected to be used with –app option.
–dom-automation
Specifies if the dom_automation_controller_ needs to be bound in the
renderer. This binding happens on per-frame basis and hence can potentially
be a performance bottleneck. One should only enable it when automating
dom based tests.
–plugin-path
Tells the plugin process the path of the plugin to loa.
–js-flags
Specifies the flags passed to JS engin.
–geoid
The GeoID we should use. This is normally obtained from the operating system
during first run and cached in the preferences afterwards. This is a numeric
value; see http://msdn.microsoft.com/en-us/library/ms776390.aspx .
–lang
The language file that we want to try to open. Of the form
language[-country] where language is the 2 letter code from ISO-639.
–debug-children
Will add kDebugOnStart to every child processes. If a value is passed, it
will be used as a filter to determine if the child process should have the
kDebugOnStart flag passed on or not.
–debug-on-start
Causes the process to start the JIT debugger on itself (mainly used by –debug-children.
–wait-for-debugger-children
Will add kWaitForDebugger to every child processes. If a value is passed, it
will be used as a filter to determine if the child process should have the
kWaitForDebugger flag passed on or not.
–wait-for-debugger
Waits for a debugger for 60 second.
–log-filter-prefix
Will filter log messages to show only the messages that are prefixed
with the specified valu.
–enable-logging
Force logging to be enabled. Logging is disabled by default in release
builds.
–dump-histograms-on-exit
Dump any accumualted histograms to the log when browser terminates (requires
logging to be enabled to really do anything). Used by developers and test
scripts.
–disable-logging
Force logging to be disabled. Logging is enabled by default in debug
builds.
–log-level
Sets the minimum log level. Valid values are from 0 to 3:
INFO = 0, WARNING = 1, LOG_ERROR = 2, LOG_FATAL = 3.
–remote-shell-port
Enable remote debug / automation shell on the specified por.
–uninstall
Runs un-installation steps that were done by chrome first-run.
–omnibox-popup-count
Number of entries to show in the omnibox popup.
–uninstallomnibox-popup-count
Removes the previous set suggestion coun.
–automation-channel
The value of this switch tells the app to listen for and broadcast
automation-related messages on IPC channel with the given ID.
–restore-last-session
Indicates the last session should be restored on startup. This overrides
the preferences value and is primarily intended for testing.
–record-mode
–playback-mode
Chrome supports a playback and record mode. Record mode saves *everything*
to the cache. Playback mode reads data exclusively from the cache. This
allows us to record a session into the cache and then replay it at will.
–no-events
Don't record/playback events when using record & playback.
–hide-icons
–show-icons
Make Windows happy by allowing it to show “Enable access to this program”
checkbox in Add/Remove Programs->Set Program Access and Defaults. This
only shows an error box because the only way to hide Chrome is by
uninstalling it.
–make-default-browser
Make Chrome default browse.
–proxy-server
Use a specified proxy server, overrides system settings. This switch only
affects HTTP and HTTPS requests.
–dns-log-details
–dns-prefetch-disable
Chrome will support prefetching of DNS information. Until this becomes
the default, we'll provide a command line switch.
–debug-print
Enables support to debug printing subsystem.
–allow-all-activex
Allow initialization of all activex controls. This is only to help website
developers test their controls to see if they are compatible in Chrome.
Note there's a duplicate value in activex_shared.cc (to avoid
dependency on chrome module). Please change both locations at the same time.
–disable-dev-tools
Browser flag to disable the web inspector for all renderers.
–always-enable-dev-tools
Enable web inspector for all windows, even if they're part of the browser.
Allows us to use our dev tools to debug browser windows itself.
–memory-model
Configure Chrome's memory model.
Does chrome really need multiple memory models? No. But we get a lot
of concerns from individuals about how the changes work on *their*
system, and we need to be able to experiment with a few choices.
–tab-count-to-load-on-session-restore
Used to set the value of SessionRestore::num_tabs_to_load_. See session_restore.h for details.
const wchar_t kTabCountToLoadOnSessionRestore[] .
–memory-profile
Enable dynamic loading of the Memory Profiler DLL, which will trace
all memory allocations during the run.
–enable-file-cookies
By default, cookies are not allowed on file://. They are needed in for
testing, for example page cycler and layout tests. See bug 1157243.
–start-maximized
Start the browser maximized, regardless of any previous settings.
TODO(pjohnson): Remove this once bug 1137420 is fixed. We are using this
as a workaround for not being able to use moveTo and resizeTo on a
top-level window.
–enable-watchdog
Spawn threads to watch for excessive delays in specified message loops.
User should set breakpoints on Alarm() to examine problematic thread.
Usage: -enable-watchdog=[ui][io]
Order of the listed sub-arguments does not matter.
–first-run
Display the First Run experience when the browser is started, regardless of
whether or not it's actually the first run.
–message-loop-strategy
–message-loop-histogrammer
Enable histograming of tasks served by MessageLoop. See about:histograms/Loop
for results, which show frequency of messages on each thread, including APC
count, object signalling count, etc.
–import
Perform importing from another browser. The value associated with this
setting encodes the target browser and what items to import.
–silent-dump-on-dcheck
Change the DCHECKS to dump memory and continue instead of crashing.
This is valid only in Release mode when –enable-dcheck is specified.
–disable-prompt-on-repost
Normally when the user attempts to navigate to a page that was the result of
a post we prompt to make sure they want to. This switch may be used to
disable that check. This switch is used during automated testing.
–disable-popup-blocking
Disable pop-up blocking.
–disable-javascript
Don't execute JavaScript (browser JS like the new tab page still runs).
–disable-java
Prevent Java from running.
–disable-plugins
Prevent plugins from running.
–disable-images
Prevent images from loading.
–use-lf-heap
Use the low fragmentation heap for the CRT.
–gears-plugin-path
Debug only switch to specify which gears plugin dll to load.
–gears-in-renderer
Switch to load Gears in the renderer process.
–enable-p13n
–javascript-debugger-path
Allow loading of the javascript debugger UI from the filesystem.
–new-http
Enable new HTTP stack.