【发布时间】:2019-10-27 06:36:18
【问题描述】:
我正在通过 beautiful-soup 从表中获取数据,并希望将其输出粘贴到 csv 文件中。假设我想要从 1 到 10 的数据,但我的 csv 文件只显示最后一个值,即第 9 个。而且我的标题也在每个输出中重复输入。请查看我的代码并告诉我我错在哪里。 但是我的代码没有错误,但它在终端中以一种奇怪的方式生成数据,并且只打印 csv 文件中数据的最后一个值。 : (
from bs4 import BeautifulSoup
import requests
from pandas import DataFrame
max = 100500
i = 100002
while i < max:
page = requests.get(
"https://rajasthanpuc.in/P_test.aspx?Spuc=P379RJ14" + str(i) + "&flag=1")
i = i + 1
soup = BeautifulSoup(page.content, 'html.parser')
num = soup.find(id='Cmobile_lbl').get_text()
num2 = soup.find(id='Vechno_lbl').get_text()
num3 = soup.find(id='Pucc_lbl').get_text()
num4 = soup.find(id='customername_lbl').get_text()
num5 = soup.find(id='Regyear_lbl').get_text()
num6 = soup.find(id='vehtype_lbl').get_text()
num7 = soup.find(id='EngType_lbl').get_text()
num8 = soup.find(id='Make_lbl').get_text()
num9 = soup.find(id='Model_lbl').get_text()
num10 = soup.find(id='Fuel_lbl').get_text()
num11 = soup.find(id='TestDate_lbl').get_text()
num12 = soup.find(id='TestTime_lbl').get_text()
num13 = soup.find(id='validdate_lbl').get_text()
num16 = soup.find(id='licence_lbl').get_text()
num17 = soup.find(id='txtResult').get_text()
# print(text)
df = DataFrame({
'numbers______': [num],
'vehicle_no___': [num2],
'fuel___': [num10],
'Pucc___': [num3],
'regn_________': [num5],
'model________________': [num9],
'name_________________': [num4]
})
print(df)
df.to_csv(r'C:\Users\intel\Desktop\export_dataframe.csv',
index=False, encoding='utf-8')
【问题讨论】:
标签: python python-3.x pandas beautifulsoup export-to-csv