我正在使用Python和BeautifulSoup抓取一些基本数据。我有两个与数据相关的变量。我可以在自己的打印语句中很好地打印数据,剥离标签并格式化好格式。如果我想以一种聪明的方式尝试组合我的汤find_all,或者我想出一种更好的方式来结合打印这两个变量,我就无法解决。
数据基本上是房地产拍卖的结果。 “ div”下的一组标签是郊区和街道。价格在“ span”下具有不同“ attrs =”的另一组标签。
我尝试在汤.find_all查询之间使用+,但这是在打印时所有的前+后所有查询,我尝试使用BeautifulSoup doco页面中的“ for child in results.descendants”和其他选项。
我尝试找到另一个堆栈溢出答案,该答案显示了如何正确组合我的.find_all查询,但是我遇到的问题是div标签和span标签组合在一起(我认为),并且我得到了span的双重打印集标记的项目,其中一种格式正确,另一种仍在跨度标签中。
from bs4 import BeautifulSoup
from urllib.request import urlopen
# URL for scraping
quote_page = 'https://www.allhomes.com.au/auction-results/'
# query the website and return the html to the variable 'page'
page = urlopen(quote_page)
# parse the html using beautiful soup and store in variable `soup`
soup = BeautifulSoup(page,'html.parser')
# grab the data from the different places in the page
sched_auctnum_and_clear_perc = soup.find_all("p", "allhomes-auction-
results__stats-item-value") # Headline numbers
house_and_address = soup.find_all("div", ["allhomes-auction-results__listing-group-title",
"allhomes-listing-card__auction-address"])
prices = soup.find_all("span", attrs={"allhomes-listing-card__auction-price-main",
"allhomes-listing-card__auction-price-prefix"})
for scheduled_percents in sched_auctnum_and_clear_perc:
num_percent = scheduled_percents.contents[0]
print(num_percent)
for each_house_result in prices:
results_or_price = each_house_result.contents[0]
print(results_or_price)
for houses_results in house_and_address:
street_address = houses_results.contents[0]
print(street_address)
将变量与价格变量合并,容纳和处理的最佳方法是什么。
喜欢听听您的意见!