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

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

為什么爬不到網頁的地址啊,顯示列表是空的

http://img1.sycdn.imooc.com//5a1973fb0001b78807030216.jpg

如圖,listurl是空的列表,用的python3

正在回答

3 回答

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

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


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

問題就是老師講課的時候圖片地址是你所寫的,但是現在已經變成了

//img1.sycdn.imooc.com//598027a90001df8006000338-240-135.jpg

稍微修改一下就可以用了

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

正則表達式寫錯了吧,是r''不是br''

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

舉報

0/150
提交
取消

為什么爬不到網頁的地址啊,顯示列表是空的

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

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

幫助反饋 APP下載

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

公眾號

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