ash_time 2017-09-21 01:12 采纳率: 0%
浏览 1876

selenium + PhantomJS()无法定位页面元素

用 selenium +chrome() 写了一个爬取 http://www.rainpat.com/Home/Index ‘’ 自动下载专利的爬虫。 一开始使用的 chrom,用的是 xpath 定位元素()右键审查元素,然后复制 xpath )一切正常 [code=php] from selenium import webdriver driver = webdriver.PhantomJS() driver.maximize_window() driver.get('http://www.rainpat.com/Home/Index') new = driver.find_element_by_xpath('/html/body/div[4]/span').click() login = driver.find_element_by_xpath('//[@id="S_top_content"]/div[1]/div[2]/ul/li/a').click() name = driver.find_element_by_xpath('//[@id="SLoginform"]/table/tbody/tr[1]/td[2]/span/input[1]') name.send_keys(name) password = driver.find_element_by_xpath('//[@id="SLoginform"]/table/tbody/tr[2]/td[2]/span/input[1]') password.send_keys(paseeword) login2 = driver.find_element_by_xpath('/html/body/div[3]/div[3]/a[1]/span/span[1]') login2.click() driver.implicitly_wait(5) driver.maximize_window() close22 = driver.find_element_by_xpath('/html/body/div[4]/span').click() driver.maximize_window() search = driver.find_element_by_xpath('/html/body/table/tbody/tr[2]/td/form/div[2]/input[1]') search.send_keys(str(105636083)) driver.implicitly_wait(2) search_click = driver.find_element_by_xpath('/html/body/table/tbody/tr[2]/td/form/div[2]/input[2]').click() driver.refresh() driver.implicitly_wait(10) print('download') driver.maximize_window() downloads = driver.find_element_by_xpath('//[@id="S_patentlistup"]/div[2]/table/tbody/tr/td[2]/div[4]/span[4]') [/code] (其中我写了很多刷新和最大化,因为我发现对于同一段代码执行多次有时候能够定位到,有时候不能。我发现加了等待和刷新就可以了。) 但是当我把浏览器换成(driver = webdriver.PhantomJS())之后,在( downloads = driver.find_element_by_xpath('//*[@id="S_patentlistup"]/div[2]/table/tbody/tr/td[2]/div[4]/span[4]'))这一句中,这个元素一直定位不到 报错:NoSuchElementException: 为什么?

  • 写回答

1条回答 默认 最新

  • threenewbee 2017-09-22 00:34
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 路易威登官网 里边的参数逆向
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏
  • ¥15 gg加速器加速游戏时,提示不是x86架构
  • ¥15 python按要求编写程序
  • ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入