Selenium启动Chrome时配置选项详解
Selenium操作浏览器是不加载任何配置的,网上找了半天,关于Firefox加载配置的多点,Chrome资料很少,下面是关于加载Chrome配置的方法:
一、加载所有Chrome配置
用Chrome地址栏输入chrome://version/,查看自己的“个人资料路径”,然后在浏览器启动时,调用这个配置文件,代码如下:
#coding=utf-8 fromseleniumimportwebdriver option=webdriver.ChromeOptions() option.add_argument('--user-data-dir=C:\Users\Administrator\AppData\Local\Google\Chrome\UserData')#设置成用户自己的数据目录 driver=webdriver.Chrome(chrome_options=option)
二、修改浏览器的User-Agent来伪装你的浏览器访问手机m站
#coding=utf-8 fromseleniumimportwebdriver option=webdriver.ChromeOptions() option.add_argument('--user-agent=iphone') driver=webdriver.Chrome(chrome_options=option) driver.get('http://www.taobao.com/')
三、浏览器启动时安装crx扩展
#coding=utf-8 fromseleniumimportwebdriver 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]”指定用户文件夹UserData路径,可以把书签这样的用户数据保存在系统分区以外的分区。
–disk-cache-dir=”[PATH]“指定缓存Cache路径
–disk-cache-size=指定Cache大小,单位Byte
–firstrun重置到初始状态,第一次运行
–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代理[via1/2]
--lang=zh-CN设置语言为简体中文
--disk-cache-dir自定义缓存目录
--disk-cache-size自定义缓存最大值(单位byte)
--media-cache-size自定义多媒体缓存最大值(单位byte)
--bookmark-menu在工具栏增加一个书签按钮
--enable-sync启用书签同步
常用:
–single-process单进程运行GoogleChrome
–start-maximized启动GoogleChrome就最大化
–disable-java禁止Java
–no-sandbox 非沙盒模式运行
全部:(下面的没有进行翻译,仔细看下应该都看得懂.~~)
–disable-hang-monitor
Suppresseshangmonitordialogsinrendererprocesses.
–disable-metrics
CompletelydisablesUMAmetricssystem.
–disable-metrics-reporting
Disablesonlythesendingofmetricsreports.IncontrasttokDisableMetrics,thisexecutesallthecodethatanormalclientwoulduseforreporting,exceptthereportisdroppedratherthansenttotheserver.ThisisusefulforfindingissuesinthemetricscodeduringUIandperformancetests.
–assert-test
Causesthebrowserprocesstothrowanassertiononstartup.
–renderer-assert-test
Causestherendererprocesstothrowanassertiononlaunch.
–crash-test
Performsacrashtestwhenthebrowserisstarte.
–renderer-crash-test
Causestherendererprocesstocrashonlaunch.
–renderer-startup-dialog
UsethisargumentwhenyouwanttoseethechildprocessesassoonasChromestart.
–plugin-startup-dialog
Causesthepluginprocesstodisplayadialogonlaunch.
–testshell-startup-dialog
Causesthetestshellprocesstodisplayadialogonlaunch.
–plugin-launcher
Specifiesacommandthatshouldbeusedtolaunchthepluginprocess.Useful
forrunningthepluginprocessthroughpurifyorquantify.Ex:
–plugin-launcher=”path\to\purify/Run=yes.
–plugin-launche.
–channel
Thevalueofthisswitchtellsthechildprocesswhich
IPCchannelthebrowserexpectstousetocommunicatewithit.
–testing-channel
Thevalueofthisswitchtellstheapptolistenforandbroadcast
testing-relatedmessagesonIPCchannelwiththegivenID.
–homepage
Thevalueofthisswitchspecifieswhichpagewillbedisplayed
innewly-openedtabs.Weneedthisfortestingpurposesso
thattheUItestsdon'tdependonwhatcomesupforhttp://google.com.
–start-renderers-manually
Whenthisswitchispresent,thebrowserwillthrowupadialogbox
askingtheusertostartarendererprocessindependentlyrather
thanlaunchingtherendereritself.(Thisisusefulfordebugging..
–renderer
Causestheprocesstorunasrendererinsteadofasbrowser.
–renderer-path
Pathtotheexecutabletorunfortherenderersubproces.
–plugin
Causestheprocesstorunaspluginhos.
–single-process
Runstherendererandpluginsinthesameprocessasthebrowse.
–process-per-tab
Runseachsetofscript-connectedtabs(i.e.,aBrowsingInstance)initsown
rendererprocess.Wedefaulttousingarendererprocessforeach
siteinstance(i.e.,groupofpagesfromthesameregistereddomainwith
scriptconnectionstoeachother).
–process-per-site
Runsasingleprocessforeachsite(i.e.,groupofpagesfromthesame
registereddomain)theuservisits.Wedefaulttousingarendererprocess
foreachsiteinstance(i.e.,groupofpagesfromthesameregistered
domainwithscriptconnectionstoeachother).
–in-process-plugins
Runspluginsinsidetherendererproces.
–no-sandbox
Runstherendereroutsidethesandbox.
–safe-plugins
Runsthepluginprocessesinsidethesandbox.
–trusted-plugins
Excludesthesepluginsfromthepluginsandbox.
Thisisacommaseparatedlistofplugindllsnameandactivexclsid.
–test-sandbox
Runsthesecuritytestforthesandbox.
–user-data-dir
Specifiestheuserdatadirectory,whichiswherethebrowserwilllook
forallofitsstate.
–app
Specifiesthattheassociatedvalueshouldbelaunchedin“application”mode.
–upload-file
Specifiesthefilethatshouldbeuploadedtotheprovidedapplication.This
switchisexpectedtobeusedwith–appoption.
–dom-automation
Specifiesifthedom_automation_controller_needstobeboundinthe
renderer.Thisbindinghappensonper-framebasisandhencecanpotentially
beaperformancebottleneck.Oneshouldonlyenableitwhenautomating
dombasedtests.
–plugin-path
Tellsthepluginprocessthepathoftheplugintoloa.
–js-flags
SpecifiestheflagspassedtoJSengin.
–geoid
TheGeoIDweshoulduse.Thisisnormallyobtainedfromtheoperatingsystem
duringfirstrunandcachedinthepreferencesafterwards.Thisisanumeric
value;seehttp://msdn.microsoft.com/en-us/library/ms776390.aspx.
–lang
Thelanguagefilethatwewanttotrytoopen.Oftheform
language[-country]wherelanguageisthe2lettercodefromISO-639.
–debug-children
WilladdkDebugOnStarttoeverychildprocesses.Ifavalueispassed,it
willbeusedasafiltertodetermineifthechildprocessshouldhavethe
kDebugOnStartflagpassedonornot.
–debug-on-start
CausestheprocesstostarttheJITdebuggeronitself(mainlyusedby–debug-children.
–wait-for-debugger-children
WilladdkWaitForDebuggertoeverychildprocesses.Ifavalueispassed,it
willbeusedasafiltertodetermineifthechildprocessshouldhavethe
kWaitForDebuggerflagpassedonornot.
–wait-for-debugger
Waitsforadebuggerfor60second.
–log-filter-prefix
Willfilterlogmessagestoshowonlythemessagesthatareprefixed
withthespecifiedvalu.
–enable-logging
Forceloggingtobeenabled.Loggingisdisabledbydefaultinrelease
builds.
–dump-histograms-on-exit
Dumpanyaccumualtedhistogramstothelogwhenbrowserterminates(requires
loggingtobeenabledtoreallydoanything).Usedbydevelopersandtest
scripts.
–disable-logging
Forceloggingtobedisabled.Loggingisenabledbydefaultindebug
builds.
–log-level
Setstheminimumloglevel.Validvaluesarefrom0to3:
INFO=0,WARNING=1,LOG_ERROR=2,LOG_FATAL=3.
–remote-shell-port
Enableremotedebug/automationshellonthespecifiedpor.
–uninstall
Runsun-installationstepsthatweredonebychromefirst-run.
–omnibox-popup-count
Numberofentriestoshowintheomniboxpopup.
–uninstallomnibox-popup-count
Removestheprevioussetsuggestioncoun.
–automation-channel
Thevalueofthisswitchtellstheapptolistenforandbroadcast
automation-relatedmessagesonIPCchannelwiththegivenID.
–restore-last-session
Indicatesthelastsessionshouldberestoredonstartup.Thisoverrides
thepreferencesvalueandisprimarilyintendedfortesting.
–record-mode
–playback-mode
Chromesupportsaplaybackandrecordmode.Recordmodesaves*everything*
tothecache.Playbackmodereadsdataexclusivelyfromthecache.This
allowsustorecordasessionintothecacheandthenreplayitatwill.
–no-events
Don'trecord/playbackeventswhenusingrecord&playback.
–hide-icons
–show-icons
MakeWindowshappybyallowingittoshow“Enableaccesstothisprogram”
checkboxinAdd/RemovePrograms->SetProgramAccessandDefaults.This
onlyshowsanerrorboxbecausetheonlywaytohideChromeisby
uninstallingit.
–make-default-browser
MakeChromedefaultbrowse.
–proxy-server
Useaspecifiedproxyserver,overridessystemsettings.Thisswitchonly
affectsHTTPandHTTPSrequests.
–dns-log-details
–dns-prefetch-disable
ChromewillsupportprefetchingofDNSinformation.Untilthisbecomes
thedefault,we'llprovideacommandlineswitch.
–debug-print
Enablessupporttodebugprintingsubsystem.
–allow-all-activex
Allowinitializationofallactivexcontrols.Thisisonlytohelpwebsite
developerstesttheircontrolstoseeiftheyarecompatibleinChrome.
Notethere'saduplicatevalueinactivex_shared.cc(toavoid
dependencyonchromemodule).Pleasechangebothlocationsatthesametime.
–disable-dev-tools
Browserflagtodisablethewebinspectorforallrenderers.
–always-enable-dev-tools
Enablewebinspectorforallwindows,evenifthey'repartofthebrowser.
Allowsustouseourdevtoolstodebugbrowserwindowsitself.
–memory-model
ConfigureChrome'smemorymodel.
Doeschromereallyneedmultiplememorymodels?No.Butwegetalot
ofconcernsfromindividualsabouthowthechangesworkon*their*
system,andweneedtobeabletoexperimentwithafewchoices.
–tab-count-to-load-on-session-restore
UsedtosetthevalueofSessionRestore::num_tabs_to_load_.Seesession_restore.hfordetails.
constwchar_tkTabCountToLoadOnSessionRestore[].
–memory-profile
EnabledynamicloadingoftheMemoryProfilerDLL,whichwilltrace
allmemoryallocationsduringtherun.
–enable-file-cookies
Bydefault,cookiesarenotallowedonfile://.Theyareneededinfor
testing,forexamplepagecyclerandlayouttests.Seebug1157243.
–start-maximized
Startthebrowsermaximized,regardlessofanyprevioussettings.
TODO(pjohnson):Removethisoncebug1137420isfixed.Weareusingthis
asaworkaroundfornotbeingabletousemoveToandresizeToona
top-levelwindow.
–enable-watchdog
Spawnthreadstowatchforexcessivedelaysinspecifiedmessageloops.
UsershouldsetbreakpointsonAlarm()toexamineproblematicthread.
Usage:-enable-watchdog=[ui][io]
Orderofthelistedsub-argumentsdoesnotmatter.
–first-run
DisplaytheFirstRunexperiencewhenthebrowserisstarted,regardlessof
whetherornotit'sactuallythefirstrun.
–message-loop-strategy
–message-loop-histogrammer
EnablehistogramingoftasksservedbyMessageLoop.Seeabout:histograms/Loop
forresults,whichshowfrequencyofmessagesoneachthread,includingAPC
count,objectsignallingcount,etc.
–import
Performimportingfromanotherbrowser.Thevalueassociatedwiththis
settingencodesthetargetbrowserandwhatitemstoimport.
–silent-dump-on-dcheck
ChangetheDCHECKStodumpmemoryandcontinueinsteadofcrashing.
ThisisvalidonlyinReleasemodewhen–enable-dcheckisspecified.
–disable-prompt-on-repost
Normallywhentheuserattemptstonavigatetoapagethatwastheresultof
apostweprompttomakesuretheywantto.Thisswitchmaybeusedto
disablethatcheck.Thisswitchisusedduringautomatedtesting.
–disable-popup-blocking
Disablepop-upblocking.
–disable-javascript
Don'texecuteJavaScript(browserJSlikethenewtabpagestillruns).
–disable-java
PreventJavafromrunning.
–disable-plugins
Preventpluginsfromrunning.
–disable-images
Preventimagesfromloading.
–use-lf-heap
UsethelowfragmentationheapfortheCRT.
–gears-plugin-path
Debugonlyswitchtospecifywhichgearsplugindlltoload.
–gears-in-renderer
SwitchtoloadGearsintherendererprocess.
–enable-p13n
–javascript-debugger-path
AllowloadingofthejavascriptdebuggerUIfromthefilesystem.
–new-http
EnablenewHTTPstack.
到此这篇关于Selenium启动Chrome时配置选项详解的文章就介绍到这了,更多相关Selenium启动Chrome内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!