import urllib3
from bs4 import BeautifulSoup
import certifi
import csv
import os
#to iterate through the .txt files
for filename in os.listdir('ecom-companies/'):
if filename.endswith('.txt'):
f = open('ecom-companies/'+ filename, 'r')
contents = f.read()
soup = BeautifulSoup(contents,'html.parser')
for i in soup.find('div',{'class':'spotlight-product-info half-margin-bottom','data-product-type':'B'}):
companyName = i.find('h1').text.strip()
ovrRating = i.find('span',{'itemprop':'ratingValue'}).text.strip()
reviewsCount = i.find('span',{'itemprop':'reviewCount'}).text.strip()
with open('ecom_main.csv','a') as outputfile:
outputfile.write(companyName+','+ovrRating+','+reviewsCount)
我想抓取网站,废弃数据并将其存储在csv文件中。我已将我想要抓取的所有页面的解析后的html响应保存在目录'ecom-companies'中作为.txt文件。我运行上面的代码并得到错误'AttributeError:'int'对象没有属性'text'。我猜这是因为有文件名包含整数(例如:1AutomationWiz.txt,3Dsellers.txt等)。但我不确定,也不知道如何纠正它。任何帮助,将不胜感激。