• python 简单的爬虫


    import urllib.request
    import re
    import ssl  # 处理https请求
    import time
    import os  # 创建目录用
    
    
    def get_html(url):
        page = urllib.request.urlopen(url)
        html = page.read()  # 返回的是 <class 'bytes'> 需要转码为字符串类型
        html = html.decode('utf-8')  # 返回的是 <class 'str'>
        return html
    
    
    reg = 'src="(.+?.jpg)" width'  # 正则表达式
    reg_img = re.compile(reg)  # 编译一下,运行更快
    ssl._create_default_https_context = ssl._create_unverified_context  # 因为爬虫对象是https链接,导入一个ssl模块就可以解决问题
    imglist = reg_img.findall(get_html('http://tieba.baidu.com/p/1753935195'))  # 进行匹配
    
    
    def mkdir(path):
        # 去除首位空格
        path = path.strip()
        # 去除尾部  符号
        path = path.rstrip("\")
    
        # 判断路径是否存在
        # 存在     True
        # 不存在   False
        isExists = os.path.exists(path)
    
        # 判断结果
        if not isExists:
            # 如果不存在则创建目录
            # 创建目录操作函数
            os.makedirs(path)
            print(path + ' 创建成功')
            return True
        else:
            # 如果目录存在则不创建,并提示目录已存在
            print(path + ' 目录已存在')
            return False
    
    
    # 定义要创建的目录
    mkpath = "picture"
    # 调用函数
    picture = mkdir(mkpath)
    
    x = 0
    for img in imglist:
        urllib.request.urlretrieve(img, mkpath+'/%s.jpg' % time.time())
        x += 1
    
    print("图片下载完成")
  • 相关阅读:
    字节流、字符流
    ArrayList、LinkedList、Vector 的区别。
    Java 为每个原始类型提供了哪些包装类型:
    int 和 Integer 有什么区别
    怎样自动把报表插入到 word 文档中
    web 报表中电子图章 / 水印的轻松实现
    玩转报表排名
    报表设计技巧之隔行异色
    单据类报表的制作
    轻松 get 报表模糊查询技能
  • 原文地址:https://www.cnblogs.com/dengnapianhuahai/p/10043118.html
Copyright © 2020-2023  润新知