亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

圖片爬到后存儲文件,windows下,打開圖片失敗

req = urllib2.urlopen('http://www.xianlaiwan.cn/') ? #抓取網頁
buf = req.read() ? #返回一個str
listurl = re.findall(r'//.+\.jpg',buf) ? #利用

print listurl
i = 0
for url in listurl:
? ?f = open(str(i)+'.jpg','w')
? ?url1 = 'http:'+url? ?#因為沒有http開頭,報錯,所以我每個元素手動添加了
? ?req = urllib2.urlopen(url1) ? ?#遍歷打開網址
? ?bug = req.read()
? ?f.write(buf)
? ?i += 1
? ?if i == 10:
? ? ? ?break
? ?f.close()

在windows下,打開圖片提示圖片出錯,求解答??

謝謝大家了?。。?/p>


正在回答

4 回答

buf = req.read().decode("utf-8") 沒寫decode圖片出來一半或是錯的圖片,加了就正確了,謝謝

0 回復 有任何疑惑可以回復我~


import re

import urllib


req = urllib.request.urlopen('http://www.xianlaiwan.cn/course/list')

#此處加上decode(),不然拿下來的數據都是亂碼

buf = req.read().decode("utf-8")


#老師講課的url地址已經發生改變,改一下正則匹配就好

# listurl = re.findall(r'src=.+\.jpg', buf)

listurl = re.findall(r'//img.+?\.jpg', buf)

# 改成非貪婪模式就行了



#前面沒有了http:,那么這里手動加上

for index,app_id in enumerate(listurl):

? ? listurl[index] = str(app_id).replace('//', 'http://')

? ? print(index, listurl[index])

print(listurl)



i = 0

for url in listurl:

? ? #寫入模式修改為“wb+”,不然不支持將bytes寫入,親測

? ? f = open(str(i)+".jpg", "wb+")

? ? req = urllib.request.urlopen(url)

? ? buf = req.read()

? ? f.write(buf)

? ? i+=1


3 回復 有任何疑惑可以回復我~
#1

陳ff

多謝指導。 我用的python2.7 沒有request模塊 用的urllib2.urlopen(url) 另外: listurl = re.findall(r'//img.+?\.jpg', buf) 這個摟出來的圖片有重復 2次 后來改為了listurl = re.findall(r'src=".+?\.jpg', buf) 然后后面的listurl[index] = str(app_id).replace('src="', 'http:') 這樣下載下來的 沒有重復的圖片了。
2018-05-09 回復 有任何疑惑可以回復我~
#2

qq_雙子_04312075 回復 陳ff

多謝你的經驗
2018-11-27 回復 有任何疑惑可以回復我~

我用的pycharm,今天才手寫的代碼,改了幾個小地方,樓主看看注意到沒有,謝謝。

re
urllib

req?=?urllib.request.urlopen()
buf?=?req.read().decode()

listurl?=?re.findall(buf)
indexapp_id?(listurl):
????listurl[index]?=?(app_id).replace()
????(indexlisturl[index])
(listurl)


i?=?url?listurl:
????f?=?((i)+)
????req?=?urllib.request.urlopen(url)
????buf?=?req.read()
????f.write(buf)
????i+=


0 回復 有任何疑惑可以回復我~

重新爬去


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

圖片爬到后存儲文件,windows下,打開圖片失敗

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號