python - 關(guān)于爬取網(wǎng)站,下載圖片的時(shí)候碰到網(wǎng)址結(jié)構(gòu)問(wèn)題卡住
問(wèn)題描述
下載圖片的時(shí)候很容易碰到下載了幾張之后碰到圖片的鏈接里面含有/時(shí)會(huì)出現(xiàn):FileNotFoundError: [Errno 2] No such file or directory:
例如:圖一:http://gnondgnoqnioandiofnas_swn_ssy_mhtng.jpg圖二:http://asnoqenconvoqenripetn_swn_ssy_mhtng.jpg圖三:http://asdnioqnoqwrqwenoqwr/12345/123/1256.gif
for item in download_link: urllib.request.urlretrieve(item,folder_path + item[-19:]) time.sleep(2) print(’Done’)
運(yùn)行到圖三的時(shí)候就中斷了,我的理解是因?yàn)閳D三的地址有/,造成文件夾之后再次進(jìn)入子文件夾進(jìn)不去,所以出錯(cuò)。
(1)想請(qǐng)問(wèn)下怎么樣能跳過(guò)這個(gè)文件,繼續(xù)下載后面的圖片(2)或者說(shuō)有什么辦法能直接把這個(gè)圖三直接下載了
問(wèn)題解答
回答1:urlretrieve第二個(gè)參數(shù)是文件名,文件名里面是不允許有斜杠的,可以這樣做:
urllib.request.urlretrieve(item,folder_path + item.split(’/’)[-1])回答2:
粗暴一點(diǎn),你可以try一下。
