网页抓取python,empy输出
我需要以下代码的帮助:网页抓取python,empy输出,python,web-scraping,beautifulsoup,Python,Web Scraping,Beautifulsoup,我需要以下代码的帮助: import csv import requests from bs4 import BeautifulSoup import datetime filename = "imob_" + datetime.datetime.now().strftime("%Y-%m-%d-%H-%M")+".csv" with open(filename, "w+") as f: writer = csv.writer(f) writer.writerow(["Loca
import csv
import requests
from bs4 import BeautifulSoup
import datetime
filename = "imob_" + datetime.datetime.now().strftime("%Y-%m-%d-%H-%M")+".csv"
with open(filename, "w+") as f:
writer = csv.writer(f)
writer.writerow(["Localizare","Pret","Data"])
for i in range(1,100):
r = requests.get("https://www.imobiliare.ro/inchirieri-case-vile/brasov?pagina="+format(i))
soup = BeautifulSoup(r.text, "html.parser")
array_price= soup.find_all('div', class_='pret')
array_desc=soup.find_all('h2', class_='titlu-anunt hidden-xs',text=True)
for iterator in range(0,len(array_price)):
localizare = array_desc[iterator].text.strip()
pret = array_price[iterator].text.strip()
writer.writerow([localizare, pret, datetime.datetime.now()])
输出为空。有人能给我一个建议吗?谢谢。您遇到了一些问题: 首先,如注释中所述,类别
price
不存在。您可以使用pret
,但使用汤更容易。查找所有('span',class=“pret-mare”)
第二个array\u desc=soup.find_all('h2',class='titlu-anunt hidden xs',text=True)
返回空。我删除了text=True
,它开始工作了
import csv
import requests
from bs4 import BeautifulSoup
import datetime
filename = "imob_" + datetime.datetime.now().strftime("%Y-%m-%d-%H-%M")+".csv"
with open(filename, "w+") as f:
writer = csv.writer(f)
writer.writerow(["Localizare","Pret","Data"])
for i in range(1,100):
r = requests.get("https://www.imobiliare.ro/inchirieri-case-vile/brasov?pagina="+format(i))
soup = BeautifulSoup(r.text, "html.parser")
array_price = soup.find_all('span', class_="pret-mare")
array_desc=soup.find_all('h2', class_='titlu-anunt hidden-xs')
for iterator in range(0,len(array_price)):
localizare = array_desc[iterator].text.strip()
pret = array_price[iterator].text.strip()
writer.writerow([localizare, pret, datetime.datetime.now()])
您是否检查过
array\u price
是否确实有任何内容?快速浏览一下页面,会发现没有任何关于价格的CSS类,而是您希望元素的itemprop属性在哪里……您是对的,谢谢。我改成了“pret”。仍然不起作用。代码为行localizare=array\u desc[iterator].text.strip()
-array\u desc为空,请检查验证是否计算正确Hey@Cristina您有机会检查我的答案吗?Hei@肉瘤。抱歉这么晚才重播。。。谢谢你的回答,成功了。然而,我需要的价格类。那两个不一样。。。