鱼C论坛

 找回密码
 立即注册
查看: 731|回复: 1

etree.HTML 里面能正确的寻到xpath selenium 里 咋不行呢?

[复制链接]
发表于 2019-6-10 11:18:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. # coding: utf-8
  2. import requests
  3. from selenium import webdriver as wd
  4. import time
  5. from lxml import etree


  6. if __name__ == '__main__':
  7.    # browser = wd.Firefox()
  8.    # browser.maximize_window()
  9.    # browser.get("http://www.weather.com.cn/forecast/")
  10.    # time.sleep(3)
  11.    # #//*[@id="txtZip"] btnZip  /html/body/div[6]/div[1]/div[1]/ul/li[2]/a//*[@id="someDayNav"] //*[@id="someDayNav"]/li[2]/a
  12.    # browser.find_element_by_id('txtZip').send_keys('乾安')  # 输入城市名称
  13.    # browser.find_element_by_id("btnZip").click()  #提交查询
  14.    # time.sleep(10)
  15.    # browser.find_element_by_xpath("//ul[@id='someDayNav']/li[2]/a").click()  #点击一周查询页面
  16.        #这里就是提示找不到xpath
  17.        #selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: //ul[@id='someDayNav']/li[2]/a
  18.    # #browser.close()
  19.    # print("发布成功,请手工登录论坛查看")
  20.    url="http://www.weather.com.cn/weather1d/101060802.shtml#input"
  21.    response = etree.HTML(requests.get(url=url).text)
  22.    text = response.xpath("//ul[@id='someDayNav']/li[2]/a/@href")
  23.    print(text[0])
  24.    '''
  25.    e:\pytest>python ex25.py
  26.    <Element a at 0x29bda30>   能找到元素

  27.    e:\pytest>python ex25.py
  28.    7&aring;¤&copy;                       能显示文本 虽然有些乱

  29.    e:\pytest>python ex25.py
  30.    /weather/101060802.shtml   能显示a元素的link地址
  31.    '''
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-6-10 14:17:10 | 显示全部楼层
自己解决 ,多个页面时  需要切换页面  

browser.switch_to_window(browser.window_handles[1])
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-16 07:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表