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("图片下载完成")

原文地址:https://www.cnblogs.com/dengnapianhuahai/p/10043118.html

时间: 2024-10-11 06:45:59

python 简单的爬虫的相关文章

Python简单网络爬虫实战—下载论文名称,作者信息(下)

在Python简单网络爬虫实战—下载论文名称,作者信息(上)中,学会了get到网页内容以及在谷歌浏览器找到了需要提取的内容的数据结构,接下来记录我是如何找到所有author和title的 1.从soup中get到data类 soup中提供了select方法来筛选所需的类.该方法使用方法如下: articlename = soup.select('title') 该语句即将soup中所有的title元素放到articlename中.select也有其他用法 articlename = soup.s

亲身试用python简单小爬虫

前几天基友分享了一个贴吧网页,有很多漂亮的图片,想到前段时间学习的python简单爬虫,刚好可以实践一下. 以下是网上很容易搜到的一种方法: 1 #coding=utf-8 2 import urllib 3 import re 4 5 def getHtml(url): 6 page = urllib.urlopen(url) 7 html = page.read() 8 return html 9 10 def getImg(html): 11 reg = r'src="(.+?\.jpg)

Python简单的爬虫

Python3 的requests的requests 库 1 安装: 在 配好python的基础上,在dos命令框中,使用 pip install requests 就行了 2 演示: python 用requests的get的方法爬取链接是很简单的,代码如下: import requests url='https://item.jd.com/5188000.html' try: r=requests.get(url) r.raise_for_status() r.encoding=r.appa

Python 简单业务爬虫

如何快速下载贴吧图片呢? #!/usr/bin/python # -*- coding: UTF-8 -*- import urllib import re def getHtml(url):     page = urllib.urlopen(url)     html = page.read()     return html def getImg(html):     reg = r'src="(.+?\.jpg)" pic_ext'     imgre = re.compile

python——简单的爬虫

1.了解网页结构 首先选取一部分的种子URL,将这些URL放入待抓取URL队列: 取出待抓取URL,解析DNS得到主机的IP,并将URL对应的网页下载下来,存储进已下载网页库中,并且将这些URL放进已抓取URL队列. 分析已抓取URL队列中的URL,分析其中的其他URL,并且将URL放入待抓取URL队列,从而进入下一个循环.... 2.requests模块 requests库 get 方法 -------直接从服务器那里获得资源.post方法 --------修改服务器上的资源.大多是提交表单或

Python 简单网页爬虫

网上的妹子图爬虫:只爬取一个人物相册 import requests from bs4 import BeautifulSoup headers = { 'User-Agent':'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)', 'Referer':'http://www.mzitu.com' } # 初始链接 start_url = 'https://www.mzitu.com/161470' start_html = requests

Python简单网页爬虫

由于Python2.x与Python3.x存在很的差异,Python2.x调用urllib用指令urllib.urlopen(), 运行时报错:AttributeError: module 'urllib' has no attribute 'urlopen' 原因是在Python3.X中应该用urllib.request. 下载网页成功后,调用webbrowsser模块,输入指令webbrowsser .open_new_tab('baidu.com.html') true open('bai

python 一个简单的爬虫(1)

1.一个简单的爬虫:爬取豆瓣的热门电影的信息 技能:获取网页源码,正则表达式,函数调用,全局变量的定义 1 #! /usr/bin/env python 2 # -*- coding=utf-8 -*- 3 import requests 4 import json 5 import re 6 import sys 7 reload(sys) 8 sys.setdefaultencoding("utf-8") 9 classinfo = [] 10 f = open('info.txt

Python 简单爬虫

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 import os import time import webbrowser as web import random count = random.randint(20,40) j = 0 while j < count:     i = 0     while i <= 5:         web.open_new_tab('http://www.cnblogs.com/evilxr/p/37642