一网通办服务入口助力企业数字化转型,需关注合规与高效运营
1632
2022-09-19
Powershell + Selenium 爬虫--基础操作(02)
上一篇介绍了在Powershell 环境下配置Selenium 环境, 简单的访问了一个网站, 接下来就要继续探索使用Selenium 来操作浏览器了
#ipmo D:\tools\Selenium\WebDriver.Support.dll#ipmo D:\tools\Selenium\WebDriver.dll$url = '= New-Object OpenQA.Selenium.Chrome.ChromeOptions$ChromeOption.AddExcludedArgument("enable-automation") # For closed "disable-infobars" message$ChromeOption.AddArguments("--start-maximized") # By default open chrome will use maximized window$ChromeDriver = New-Object OpenQA.Selenium.Chrome.ChromeDriver($ChromeOption)#$ChromeDriver.Manage().Timeouts().ImplicitWait.Add((New-TimeSpan -Seconds 5))#隐式等待#$Options = New-Object OpenQA.Selenium.Edge.EdgeOptions#$Options.AcceptInsecureCertificates = $true #Ignore Certificate#$Edge = New-Object OpenQA.Selenium.Edge.EdgeDriver($Options)$ChromeDriver.Navigate().GoToUrl($url)
1. 最大化浏览器窗口:
$ChromeDriver = New-Object OpenQA.Selenium.Chrome.ChromeDriver$ChromeDriver.Manage().Window.Maximize()
# = $ChromeDriver.FindElementById('zhaopin')$ele.Click()
3. 向输入框中填充值
$eleinput = $ChromeDriver.FindElementById('keyword') # Find input box element# $eleinput.Clear() # Clear input box value$eleinput.SendKeys('android开发工程师') # Set input box value
4. 查找元素li 标签 By Class Name # Found result is Array
$li_items = $ChromeDriver.FindElementsByClassName('con_list_item')
5.获取iFrame 当中的内容
5.1 首先需要切换到Frame 当中再进行正常的FindElementById/ FindElementByClass / FindElementByTagName....
$ChromeDriver.SwitchTo().Frame('mif-comp-ext-gen-top333-572533') #Swith into iFrame By ID or Name
5.2 iFrame 操作完成, 退回到主文档, 才可以继续FindElement or FindElement, 否则可能会出现以下字样
Exception calling "FindElement" with "1" argument(s): "no such element: Unable to locate element:
$ChromeDriver.SwitchTo().DefaultContent() #Swith to Main document
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~