作者zo6596001 (超帅肥宅)
看板Python
标题[问题] Selenium xpath 读取href的问题
时间Sun Mar 11 17:20:47 2018
哈罗,我正在用Python写一个自动抓图程式,想要从HTML码中抓出href的连结。
使用Selenium 的 find_element_by_xpath ,但不管怎麽样都抓不出连结。
HTML码如下:
...
<li><a class="AAA XXX" href="连结1">View</a></li>
<li><a class="AAA" href="连结1">Download</a></li>
<li><a class="BBB" href="连结2">Download Large Version</a></li>
...
程式码如下:
try :
# 优先下载大图(连结2)
target = driver.find_element_by_xpath("//a[@class='BBB']")
print(target.text)
except:
# 没有大图
try:
# 下载小图 (连结1)
target = driver.find_element_by_xpath("//a[@class='AAA']")
print(target.text)
except:
# 连结没有图片
print ("nothing")
输出结果:
Download Large Version
上网查了一下,改成
target = driver.find_element_by_xpath("//a[@class='BBB']/@href")
输出结果则是:
nothing
请问一下,要怎麽让xpath读出href的连结呢?
还是有什麽更好的方法呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.45.81.77
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1520760050.A.57C.html
我还是用 Selenium -> BeautifulSoup4 -> Regular Expression 这种方法好了...
※ 编辑: zo6596001 (114.45.81.77), 03/11/2018 18:32:50
1F:推 ckc1ark: 原本做法改成print(target.get_attribute('xref')) 这样? 03/12 01:01
2F:→ ckc1ark: h 03/12 01:01
3F:推 TakiDog: .get_attribute 抓标签内都是这lol 03/12 08:49