04 爬取妹子图最热图片

参考链接:https://github.com/wzyonggege/Mzitu-Crawler/blob/master/mzitu.py

项目地址:

copywang/spiders_collection

实验功能

爬取 http://www.mzitu.com/hot/ 文章图片

  1. 先请求http://www.mzitu.com/hot/ 首页
  2. 分析首页HTML代码,用正则表达式获取一共有多少后翻页数,后续的url格式是http://www.mzitu.com/hot/页码
  3. 在"http://www.mzitu.com/hot/页码" 中查找图片页的地址,使用正则表达式
  4. 把图片详情页的url作为参数,传入main函数,首先请求图片详情页,使用正则表达式查找是有多少张图片,使用图片详情页的url和图片的索引,可以组合出图片页的真实url,使用正则表达式获取图片标题和图片真实的url
  5. 下载图片,并保存到MongoDB

遇到的问题

  1. 请求图片详情页出错,返回“盗链”的图片提示,修改header并传入正确的Referer解决
  2. 图片标题带?,使用replace方法替换,否则无法创建目录

需要改进的地方

  1. 多线程,当前是单线程采集,速度很慢

采集结果:

时间: 2024-10-05 10:48:02

04 爬取妹子图最热图片的相关文章

Python 2.7_爬取妹子图网站单页测试图片_20170114

1.url= http://www.mzitu.com/74100/x,2为1到23的值 2.用到模块 os 创建文件目录; re模块正则匹配目录名 图片下载地址; time模块 限制下载时间;requests模块获取网页源代码;urllib模块 urllib.urlretrieve(图片url,保存的带扩展名的文件名x.jpg)方法下载图片 3.知识点 文件目录处理  函数封装调用 全局变量 4.代码 #coding:utf-8 import os import re import reque

Scrapy爬取妹子图保存到不同目录下

进行设置settings #启动图片管道 ITEM_PIPELINES = { 'mztu.pipelines.ImagesPipelinse': 300, } #设置默认目录地址 注意下载图片的话默认地址必须设置!!! IMAGES_STORE = "E:\study\Python\scrapy\mztu\imges" #设置图片通道失效时间 IMAGES_EXPIRES =90 #缩略图生成 #IMAGES_THUMBS = { # 'small': (50, 50), # 'bi

爬取妹子图片

学习练习爬虫的时候写了一个爬取妹子的小程序玩玩. from bs4 import BeautifulSoup import requests import os from threading import Thread ''' soup.find( name , attrs , recursive , string , **kwargs )函数 name:查找哪一个标签 attrs:标签里的指定那个参数,比如class 注意: BeautifulSoup()返回的类型是<class 'bs4.B

spider_爬取斗图啦所有表情包(图片保存)

"""爬取斗图吧里面的所有表情包 知识点总结: 一.使用requests库进行爬取,随机请求头(网站反爬措施少.挂个请求头足矣) 二.具体思路: 1.先爬取所有的图片url,放在列表里 2.循环遍历url请求这些图片, 3.将图片进行分类保存三.分类保存用到一个知识点,endwith(以***结尾) 使用这个函数,将jpg,gif,png等不同类型的图片分开四.演示案例中,只爬取了前20页.五.各个定义的数字变量意思为: n=1 网页页数 num=1 保存图片数 注:该案例主

scrapy爬取斗图表情

用scrapy爬取斗图表情,其实呀,我是运用别人的博客写的,里面的东西改了改就好了,推存链接" http://www.cnblogs.com/jiaoyu121/p/6992587.html " 首先建立项目:scrapy startproject doutu 在scrapy框架里先写自己要爬取的是什么,在item里面写. import scrapyclass DoutuItem(scrapy.Item): # define the fields for your item here

Python爬取贴吧中的图片

#看到贴吧大佬在发图,准备盗一下 #只是爬取一个帖子中的图片 1.先新建一个scrapy项目 scrapy startproject TuBaEx 2.新建一个爬虫 scrapy genspider tubaex https://tieba.baidu.com/p/4092816277 3.先写下items #保存图片的url img_url=scrapy.Field() 4.开始写爬虫 # -*- coding: utf-8 -*-import scrapyfrom TuBaEx.items

爬取糗事百科的图片

小编,最近写了个单线程的爬虫,主要是爬取糗事百科的图片之类的,下面是源代码,小伙伴们可以拿去参照,学习 #!/usr/bin/env python# -*- coding:utf-8 -*-import requests,jsonimport requests,re,os,timeimport urllib.requestimport urllib.parseimport sslimport unittestfrom selenium import webdriver headers = {"U

【Python3 爬虫】U28_多线程爬取斗图啦的表情包

目录 1.需求描述 2.实战代码 2.1 单线程爬取 2.2 多线程版 1.需求描述 爬取斗图啦网站,地址为:https://www.doutula.com/photo/list/[Python3 爬虫]U28_多线程爬取斗图啦的表情包 原文地址:https://www.cnblogs.com/OliverQin/p/12636681.html

python—多协程爬取糗事百科热图

今天在使用正则表达式时未能解决实际问题,于是使用bs4库完成匹配,通过反复测试,最终解决了实际的问题,加深了对bs4.BeautifulSoup模块的理解. 爬取流程 前奏: 分析糗事百科热图板块的网址,因为要进行翻页爬取内容,所以分析不同页码的网址信息是必要的 具体步骤: 1,获取网页内容(urllib.request)# 糗事百科有发爬虫技术,所以要添加headers,伪装程浏览器 2,解析网页内容,获取图片链接(from bs4 import BeautifulSoup) 3,通过图片链接