所以,我正在尝试打开一个网站并搜索一个关键字.我想继续每一页并获得价格.我将为所有页面执行此 *** 作.
最初我尝试点击下一个按钮,但此网站上的“下一步按钮”不会被禁用.例如,如果有15页,那么在第15页,下一页按钮应该被禁用,但我可以无限次点击它.在第15页之后,点击它时,它只显示第15页.
所以我得到总页数并使用while循环如下:任何人都可以在语法上帮助我吗?我做了以下事情:
from selenium.webdriver.common.keys import Keysfrom selenium.webdriver.support.ui import webdriverwait as waitfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver.common.by import By#open a website and search a keywordfrom selenium import webdriverdriver =webdriver.firefox()driver.get('https://www.insight.com/en_US/search.HTML')List=['printer','printer cartrIDges','printer accessorIEs']for searchelement in List:inputElement = driver.find_element_by_ID("search-tab-banner-Box-input")inputElement.clear()inputElement.send_keys(List)wait( driver,30 ).until( EC.visibility_of_element_located( (By.ID,"search-tab-banner-Box-input") ) ).send_keys(Keys.ENTER )inputElement.send_keys(Keys.TAB )i=1#Get total number of pages in search result and navigate through # I want to do something like this. this is my logic not real codetotalpages= enumerate(driver.gettotalnumber of pages)while (i<totalpages) driver.find_element_by_class_name( "ion-chevron-right" ).click() i+=1#Get total number of pages
如何获取该变量中的总页数?
附:我不能使用try异常
我是初学者
price='0' while True: if price!=driver.find_element_by_class_name("prod-price"): driver.find_element_by_class_name( "ion-chevron-right" ).click() else: break i+=1 price=driver.find_element_by_class_name("prod-price")#Get total number of pagesprint('the total number of pages is ',i)
这应该工作.它比较页面的价格.
总结以上是内存溢出为你收集整理的获取网页python的总页数全部内容,希望文章能够帮你解决获取网页python的总页数所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)