我想通过链接获取功能公司的文本。我检查它并获取xpath但它无法找到该元素。链接始终在变化,但与Statement
我想要抓取的文字会在屏幕截图中突出显示。
listedcompanies.com
错误是
from selenium import webdriver
browser = webdriver.Firefox()
browser.get("https://www.shareinvestor.com/my")
time.sleep(20)
browser.find_element_by_xpath("//*[@href='http://salcon.listedcompany.com']")
我想获取这些公司的文本
答案 0 :(得分:0)
尝试使用"//a[contains(@href, 'listedcompany.com')]"
XPath
来匹配包含href
的{{1}}属性的所有链接,如下所示:
"listedcompany.com"
答案 1 :(得分:0)
如果您需要Featured Companies
标签下的文字,可以使用以下代码:
import requests
from parsel import Selector
url = 'https://www.shareinvestor.com/my'
r = requests.get(url)
sel = Selector(r.text)
all_text = sel.xpath('//div[@class="sic_scrollPane" and a[img]]')
for ind, text in enumerate(all_text, start=1):
text = ''.join(text.xpath('p//text()').extract())
print(ind, text)
它可以在不使用Selenium的情况下从该选项卡中获取所有文本。
注意:我使用基于lxml构建的Parsel库,但您可以使用bs4
或lxml
。