本文注意是用於記錄在用python寫爬蟲的過程中所經歷的一些問題及其解決方法,便於後續翻查。
出錯**
fp = open("filetest.txt","w")
fp.write("hello world \n")
fp.close()
import os
os.rename("filetest.txt","newfiletest.txt")
fp = open("newfiletest.txt","r")
print ("the new file name is:",fp.name)
詳細錯誤資訊fileexistserror: [winerror 183] 當檔案已存在時,無法建立該檔案。: 'filetest.txt' -> 'newfiletest.txt'
原因及解決方法
由於歷史原因,在本**出錯之前已有其他錯誤,導致檔案已經被重新命名為filetest.txt,導致無法重複對其進行重新命名,因而出錯。解決方法是將**目錄下的同名檔案刪除,再執行**,即可。
出錯**
def
getmmalbumlist
(personal_id, file):
# get the ambum list of a sigle mm
data = urllib.request.urlopen(personal_id)
soup = beautifulsoup(data, 'lxml')
tag=soup.find_all('div')
album_url=tag.get('href')
return data
詳細錯誤資訊album_url=tag.get('href')
attributeerror: 'resultset' object has no attribute 'get'
原因及解決方法
通過列印tag可知其為乙個tag的集合(類似於乙個結構體),而**需要從中找出href的屬性值(可以理解為結構體中的某個變數的型別),如此在獲取單個tag的屬性值之前必須要定位到該tag,不能對整個tag集合進行操作。因此在該段**中,若想取得某個tag的屬性,需要遍歷整個tag集合,找出該tag,最後呼叫get函式,獲得相應屬性值。修改後的**如下:
def
getmmalbumlist
(personal_id, file):
# get the ambum list of a sigle mm
data = urllib.request.urlopen(personal_id)
soup = beautifulsoup(data, 'lxml')
for tag in soup.find_all('a')
print (tag)
return data
Python錯誤記錄
第一種 str hello world print str 20 indexerror string index out of range 索引錯誤 字串超出範圍 解決方法 索引小於字串的長度 print str 4 o 第二種 list a b c d e print list 20 indexe...
Python開發各種錯誤記錄
對比兩段 def sign try users query users sign for user in users try except exception as e msg 出現錯誤,趕快手動填 logger.warning traceback.format exc finally except...
puppet 錯誤記錄
因為測試的需要把puppet master 給乾掉了,重新安裝puppet master,重新開始認證簽名。安裝好puppet master,什麼也不做,使用之前的client 連線master,會出現以下錯誤 warning peer certificate won t be verified i...