【发布时间】:2022-11-19 22:54:10
【问题描述】:
我正在学习从网站https://tribune.com.pk/pakistan/archives 抓取新闻文章。第一件事是抓取每篇新闻文章的链接。现在的问题是 <a 标签中包含两个 href,但我想获得第一个 href 标签,但我无法做到 我附上那个特定部分的html 我写的代码返回了 2 个 href 标签,但我只想要第一个
def Url_Extraction():
category_name = driver.find_element(By.XPATH, '//*[@id="main-section"]/h1')
cat = category_name.text # Save category name in variable
print(f"{cat}")
news_articles = driver.find_elements(By.XPATH,"//div[contains(@class,'flex-wrap')]//a")
for element in news_articles:
URL = element.get_attribute('href')
print(URL)
Url.append(URL)
Category.append(cat)
current_time = time.time() - start_time
print(f'{len(Url)} urls extracted')
print(f'{len(Category)} categories extracted')
print(f'Current Time: {current_time / 3600:.2f} hr, {current_time / 60:.2f} min, {current_time:.2f} sec',
flush=True)
此外,我可以分页,但无法通过单击主页上提供的各个链接来获取完整的文章。
【问题讨论】:
-
您是否正在尝试学习 Selenium。还是您实际上是在获取该数据?如果您正在尝试学习 Selenium,请在正确的上下文中使用它:QA 测试。如果您正在尝试抓取该数据,请使用适合网络抓取的工具。
标签: python selenium web-scraping