python 简单的爬虫

Posted 等那片花海

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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("图片下载完成")

 

以上是关于python 简单的爬虫的主要内容,如果未能解决你的问题,请参考以下文章

爬虫遇到头疼的验证码?Python实战讲解弹窗处理和验证码识别

Python练习册 第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-),(http://tieba.baidu.com/p/2166231880)(代码片段

5行python代码实现简单的网络爬虫

[Python]python爬虫简单试用

如何用最简单的Python爬虫采集整个网站

python 用于在终端中运行的sublime text 3的简单代码片段制作工具