标题:【求助帖】网页下载图片并保存
只看楼主
小小军
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2020-8-29
结帖率:0
已结贴  问题点数:20 回复次数:2 
【求助帖】网页下载图片并保存
程序代码:
import urllib.request
import re
import os

def open_url(url):     
    req = urllib.request.Request(url)
    req.add_header("User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0")
    page = urllib.request.urlopen(req)
    html = page.read().decode("utf-8")
    return html    

def get_img(html):
    p = (r'<img src="(http[^_]*//i0\dpiccdn.*)" data-img="" style="height:214.1px;width:[^a-z]*px;".*">')
    imglist = re.findall(p,html)
    
    try:
        os.mkdir("蔡徐坤")
    except FileExistsError:
            pass
    os.chdir("蔡徐坤")

    for each in imglist:
        filename = each.spilt("//")[1]
        with open (filename,"wb") as f:
            f.write(each)

       # urllib.request.urlretrieve(each,filename,None)
        
if __name__ == "__main__":
    url = "https://pic. get_img(open_url(url))
    

能够运行没有报错,但是生成的文件夹中没有下载的图片,请问这是哪里有错误吗?

[此贴子已经被作者于2020-8-29 10:37编辑过]

搜索更多相关主题的帖子: html 网页 request 图片 url 
2020-08-29 10:36
fall_bernana
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:17
帖 子:240
专家分:2086
注 册:2019-8-16
得分:10 
以下是引用小小军在2020-8-29 10:36:44的发言:

import urllib.request
import re
import os

def open_url(url):     
    req = urllib.request.Request(url)
    req.add_header("User-Agent","Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0")
    page = urllib.request.urlopen(req)
    html = page.read().decode("utf-8")
    return html   

def get_img(html):
    p = (r'<img src="(http[^_]*//i0\dpiccdn.*)" data-img="" style="height:214.1px;width:[^a-z]*px;".*">')
    imglist = re.findall(p,html)
   
    try:
        os.mkdir("蔡徐坤")
    except FileExistsError:
            pass
    os.chdir("蔡徐坤")

    for each in imglist:
        filename = each.spilt("//")[1]
        with open (filename,"wb") as f:
            f.write(each)

       # urllib.request.urlretrieve(each,filename,None)
        
if __name__ == "__main__":
    url = "https://pic.
    get_img(open_url(url))
   

能够运行没有报错,但是生成的文件夹中没有下载的图片,请问这是哪里有错误吗?






虽然没有报错。但是你需要打印下你正则匹配的内容。可能你什么也没有匹配到。然后你这个f.write是个啥?把文本内容写进去?
2020-08-31 10:12
炸天帮
Rank: 2
等 级:论坛游民
帖 子:17
专家分:62
注 册:2020-3-23
得分:10 
图片是二进制应该用content

c生万物
2020-08-31 11:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-502997-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.051725 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved