我在抓取一個網站並從中獲取公司詳細信息,現在我試圖將數據存儲到數據庫中。但我得到了一些錯誤,如如何使用python中的PyMYSQL將數據存儲到數據庫中
raise InternalError(errno, errorvalue)
pymysql.err.InternalError: (1054, "Unknown column 'companyaddress' in 'field list'")
這裏是我的代碼
for d in companydetail:
lis = d.find_all('li')
companyname = lis[0].get_text().strip()
companyaddress = lis[1].get_text().strip()
companycity = lis[2].get_text().strip()
try:
companypostalcode = lis[3].get_text().strip()
companypostalcode = companypostalcode.replace(",","")
except:
companypostalcode = lis[3].get_text().strip()
try:
companywebsite = lis[4].get_text().strip()
except IndexError:
companywebsite = 'null'
print (companyname)
print (companyaddress)
print (companycity)
print (companypostalcode)
print (companywebsite)
try:
with connection.cursor() as cursor:
print ('saving to db')
cursor.execute("INSERT INTO company(companyname,address,city,pincode,website) VALUES (companyname,companyaddress,companycity,companypostalcode,companywebsite)")
connection.commit()
connection.close()
我得到我的數據,我想,但我不能夠將數據存儲到數據庫中。 結果我得到的同時進行打印(公司名稱)和打印(campanyaddress)是:
NINGBO BOIGLE DIGITAL TECHNOLOGY CO.,LTD.
TIANYUAN INDUSTRIAL ZONE CIXI NINGBO
ZHEJIANGNINGBO
315325
http://www.boigle.com.cn
它的工作只是一個時間後,它給錯誤: 在處理上述異常,另一個異常: 回溯(最近通話最後一個): 文件「d:\蟒蛇\ new.py」,行112,in connection.close() 文件「C:\ Users \ amanp \ AppData \ Local \ Programs \ Python \ Python35-32 \ lib \ site-packages \ pymysql \ connections.py」,行701 引發err.Error(「已關閉」) pymysql.err.Error:已關閉 –
@SiteshRanjan是的,因爲你調用'connection.close()'。 – alecxe
@ alecxe。是的,我糾正了它。但我收到另一個錯誤: 警告(來自警告模塊): 文件「C:\ Users \ amanp \ AppData \ Local \ Programs \ Python \ Python35-32 \ lib \ site-packages \ pymysql \ cursors.py」,第309行 self._do_get_result() 警告:錯誤的字符串值:'\ xEF \ xBC \ x8Cifl ...'列1'的網站' –