av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

網頁爬蟲 - 博客園博客中的圖片怎么用python爬取下來?

瀏覽:116日期:2022-07-25 17:42:22

問題描述

寫了一小段代碼,爬取博客園博客中的圖片,這段代碼對部分鏈接有效,還有一部分鏈接一爬就報錯,這是什么原因呢?

#coding=utf-8import urllibimport refrom lxml import etree#解析地址def getHtml(url): page = urllib.urlopen(url) html = page.read() return html#獲取地址并建樹url = 'http://www.cnblogs.com/fnng/archive/2013/05/20/3089816.html'html = getHtml(url)html = html.decode('utf-8')tree = etree.HTML(html)#保存圖片至本地reg = r’src='http://www.4tl426be.cn/wenda/(.*?)' alt’imgre = re.compile(reg)imglist = re.findall(imgre, html)x = 0for imgurl in imglist: urllib.urlretrieve(imgurl, ’%s.jpg’ % x) x += 1

如圖,可以正確爬取圖片網頁爬蟲 - 博客園博客中的圖片怎么用python爬取下來?

若把url換為

url = 'http://www.cnblogs.com/baronzhang/p/6861258.html'

則立馬報錯

網頁爬蟲 - 博客園博客中的圖片怎么用python爬取下來?

求解決,謝謝!

問題解答

回答1:

錯誤提示已經很明顯了,你去看下網頁源代碼,匹配到的第一張圖片是一個GIF格式的,并且還是相對路徑,所以你是下載不到的,故提示IOerror,就算你下載到了,因為你指定了格式為JPG,你也打不開。 因此你需要做的就是判斷和篩選

for imgurl in imglist: if 'gif' not in imgurl:urllib.urlretrieve(imgurl, ’%s.jpg’ % x)x += 1

看下我增加的地方,當然這只是最簡單的判斷,但可以保證你第二個程序不會報錯,也是給你一個思路!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 久久久久久久久久久久久9999 | 中文字幕一区二区三区乱码在线 | 免费成人高清在线视频 | 99久久婷婷国产综合精品电影 | 91在线导航 | 中文字幕一区二区三区精彩视频 | 色免费看 | 欧美一级片久久 | 天天干狠狠 | 欧美福利在线 | 欧洲成人| 亚洲免费在线 | 午夜影院在线观看版 | 伊人网站 | 国产精品久久久久久久久久久免费看 | 97在线观看 | 亚洲精品福利视频 | 日韩一区二区视频 | 欧美在线日韩 | 二区高清 | 欧美日韩综合精品 | 亚洲最大福利网 | 国产91丝袜在线播放 | 欧美日韩国产一区 | 亚洲性人人天天夜夜摸 | 国产亚洲一区二区三区在线观看 | 国精久久 | 97视频在线观看免费 | 九九九视频在线观看 | 精品欧美一区二区中文字幕视频 | 99精品国产一区二区三区 | 成人免费视频7777777 | 久久中文视频 | 欧美区在线| 狠狠色香婷婷久久亚洲精品 | 久久精品成人热国产成 | 五月婷婷在线视频 | 一级在线观看 | 日韩视频国产 | 成人免费一区二区三区视频网站 | 第一区在线观看免费国语入口 |