【发布时间】:2021-11-27 17:23:48
【问题描述】:
这些代码会给我地址,但不会给我电话号码
import requests
from bs4 import BeautifulSoup
headers ={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36'}
r=requests.get('https://www.houzz.com/professionals/general-contractor')
soup=BeautifulSoup(r.content, 'html.parser')
tra = soup.find_all('div',class_='hz-pro-search-result__info')
for pro in tra:
address=pro.find('span',class_='hz-pro-search-result__location-info__text').text
try:
phone=pro.select('div.hz-pro-search-result__right-info__contact-info > span > span').text
except:
phone=''
print(address,phone)
从这里获取Phone Number的数据,页面的链接是https://www.houzz.com/professionals/general-contractor
<div class="hz-pro-search-result__right-info__contact-info"><span class="hz-pro-search-result__contact-info"><span class="icon-font icon-phone hz-pro-search-result__contact-info__icon" aria-hidden="true"></span>(800) 310-7154</span></div>
<span class="hz-pro-search-result__contact-info"><span class="icon-font icon-phone hz-pro-search-result__contact-info__icon" aria-hidden="true"></span>(800) 310-7154</span>
【问题讨论】:
-
您可能需要 selenium,因为我们只有在单击
View Phone Number按钮后才能获得电话号码 -
我试过 selenium,
click电话号码并提供电话号码,但它不适合我 -
你也可以给那个代码吗?
-
他们什么都不给
-
不只是给出你尝试使用 selenium 的代码
标签: python selenium web-scraping beautifulsoup