【发布时间】:2020-09-21 19:42:20
【问题描述】:
我正在编写一个 python 3 脚本来抓取网站并检查产品是否有库存。我遇到的问题是在我从 BeautifulSoup 获取的超链接中搜索产品名称。产品名称会有一个空格,所以它实际上是 2 个单词,我认为这就是导致问题的原因。
** product_name 传入,例如:“Blue Truck”
示例链接:<a href="https://example.com/products/">Blue Truck</a>
soup = BeautifulSoup(driver.page_source, 'html.parser')
print("Trying to find links " + threadName)
for a in soup.findAll('a'):
if product_name in a['href']:
email_link(a)
print("FOUND" + threadName)
break
elif product_name.lower() in a['href']:
email_link(a)
print("FOUND" + threadName)
break
运行此代码时,它永远不会返回匹配项。我也试过了:
if (a.find(product_name) != -1):
email_link(a)
此 find() 返回错误匹配项。任何帮助都会很好,或者建议哪种方式最快。
【问题讨论】:
-
试试 a.text 而不是 a['href']
标签: python beautifulsoup