python实战——下载推女郎图片

2023-11-07

说明

python2.7或3.4小脚本
这个小软件是和urllib和urllib2的使用结合了python网页获取异常的处理,原理非常简单,适合初学者练手~

功能

下载这个网站上的图片

成果

先放福利啦~
成果

分析

首先,想下载网站上的图片就需要获得图片的地址,正常套路是用正则在网页源代码中匹配到要下载的图片的网址,再下载,但是这回通过发现图片的路径是有规律的:

http://www.tuigirl8.com/tu/N/n.jpg

N代表第几期,n是代表第几张。
抓取截图
那么接下来就好办了,只要程序循环N和n,不断获取图片就能下载到了!
不过写出来报错,因为当让puython下载的网址不是图片的时候,会报错,程序也就终止了,好办,加个try:
最后修改好是下面的代码

最终成果

2.7版

#-*-coding:utf-8-*-
##python2.7 project

import re,urllib,urllib2

#--------------
No = 1
n = 9
#---------------
s = True
b = True
err = 0
def download_image(url, save_path): 
     urllib.urlretrieve(url, save_path)
#'http://www.tuigirl8.com/tu/no/n.jpg'
def download(No,n):
    html = 'http://www.tuigirl8.com/tu/%d/%d.jpg'%(No,n)

    dic = './%d_%d.jpg'%(No,n)
    try:
        response = urllib2.urlopen(html)  
        html1 = response.read()  
    except urllib2.URLError, e: 
        print'这个路径下没有图片,跳过'
        s = False 
        return s

    else:
        download_image(html,dic)
        print'下载成功%s'%dic
        s = True
        return s
while b:

    if download(No,n) == False:
        err+=1
        if err == 15:
            No+=1
    n+=1        


print 'ok!'

3.4版

#-*-coding:utf-8-*-
#python3.4 project

import urllib.request,urllib.error

#--------------
No = 1
n = 9
#---------------
s = True
b = True
err = 0
def download_image(url, save_path): 
    urllib.request.urlretrieve(url, save_path)
#'http://www.tuigirl8.com/tu/no/n.jpg'
def download(No,n):
    html = 'http://www.tuigirl8.com/tu/%d/%d.jpg'%(No,n)

    dic = './%d_%d.jpg'%(No,n)
    try:
        response = urllib.request.urlopen(html)  
      #  html= response.()  
    except urllib.error.URLError as e: 
        print('这个路径下没有图片,跳过')
        s = False 
        return s

    else:
        download_image(html,dic)
        print('下载成功')
        s = True
        return s
while b:

    if download(No,n) == False:
        err+=1
        if err == 15:
            No+=1
    n+=1        


print ('ok!')

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/broven/p/4730810.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python实战——下载推女郎图片 的相关文章

  • 当默认 pip 为 pip2 时,升级 pip3 的正确格式是什么?

    我为两者开发Python 2 and 3 因此 我必须同时使用pip2 and pip3 使用时pip3 我收到此升级请求 最后两行 pip3 install arrow Requirement already satisfied use
  • 用于查找列表/集合中唯一元素的代码

    根据上面阴影部分的面积应该代表 A XOR B XOR C XOR A AND B AND C 如何将其翻译成Python代码 代码必须与上述表达式中提供的集合操作密切相关 至少这是首选 该代码必须足够通用 能够处理 3 个以上的列表 UP
  • 如何读取通过追加行不断更新的文件?

    在我的终端中我正在运行 curl user dhelm 12345 https stream twitter com 1 1 statuses sample json gt raw data txt curl 的输出是实时流式 Twitte
  • 在 Django 中获取数据库类型[重复]

    这个问题在这里已经有答案了 我需要能够确定 Django 运行时使用的数据库类型 MYSQL False if
  • sphinx 中的分组方法文档字符串

    是否可以使用 sphinx 的 autodoc 功能将多个方法文档字符串分组 以便将它们列在一起 class Test object def a self A method of group foo def b self A method
  • 检查多维 numpy 数组的所有边是否都是零数组

    n 维数组有 2n 个边 1 维数组有 2 个端点 2 维数组有 4 个边或边 3 维数组有 6 个 2 维面 4 维数组有 8 个边 ETC 这类似于抽象 n 维立方体发生的情况 我想检查 n 维数组的所有边是否仅由零组成 以下是边由零组
  • __getitem__、__setitem__ 如何处理切片?

    我正在运行 Python 2 7 10 我需要拦截列表中的更改 我所说的 更改 是指在浅层意义上修改列表的任何内容 如果列表由相同顺序的相同对象组成 则列表不会更改 无论这些对象的状态如何 否则 它会更改 我不需要找出来how列表已经改变
  • 为什么我不能“string”.print()?

    我的理解print 在 Python 和 Ruby 以及其他语言 中 它是字符串 或其他类型 上的方法 因为它的语法非常常用 打印 嗨 works 那么为什么不呢 hi print 在 Python 中或 hi print在红宝石工作 当你
  • 比较两个文本文件并计算差异

    我一直在尝试在Python中比较两个文本文件 本质上我想打开它们并一次比较一个字符 如果字符不同 则向计数器添加1 然后显示该值 这是我到目前为止所拥有的 usr bin env python diff 0 import random im
  • 如何在返回的 AJAX 调用上使用 django 模板标签?

    我有一个简单的 AJAX 脚本 它在名为的搜索字段中获取输入的字符串AJAXBox并调用一个视图函数 该函数使用过滤器查询数据库并返回与输入参数匹配的所有 User 对象的查询集 当我使用 django 模板标签迭代查询集时 它不起作用 我
  • 什么时候用==,什么时候用is?

    奇怪的是 gt gt gt a 123 gt gt gt b 123 gt gt gt a is b True gt gt gt a 123 gt gt gt b 123 gt gt gt a is b False Seems a is b
  • Python代码执行时自动打开浏览器

    我正在 Python Flask 中实现 GUI Flask 的设计方式是 必须 手动 打开本地主机以及端口号 有没有一种方法可以使其自动化 以便在运行代码时自动打开浏览器 本地主机 我尝试使用 webbrowser 包 但它在会话终止后打
  • 当我打印“查询”时获取 PY_VAR1

    我正在制作一个简单的网络抓取代码 当我尝试打印一个值时 它给了我其他东西 def PeopleSearch query SearchTerm query what is query print str query SearchTerm St
  • 如何让 Python 找到 ffprobe?

    I have ffmpeg and ffprobe安装在我的 mac macOS Sierra 上 并且我已将它们的路径添加到 PATH 中 我可以从终端运行它们 我正在尝试使用ffprobe使用以下代码获取视频文件的宽度和高度 impor
  • Docker Build 找不到 pip

    尝试关注一些 1 https aws amazon com blogs aws run docker apps locally using the elastic beanstalk eb cli 2 http docs aws amazo
  • 如何使用 Ajax 在 Flask 中发布按钮值而不刷新页面?

    我有一个问题 当我单击 Flask 应用程序中的按钮时 我想避免重新加载 我知道有 Ajax 解决方案 但我想知道如何将我的按钮链接到 ajax 函数以发布按钮值并运行链接到其值的 python 函数 这是我的 html 按钮 div di
  • 如何从外语线程调用Python函数(C++)

    我正在开发一个程序 使用 DirectShow 来抓取音频数据 媒体文件 DirectShow 使用线程将音频数据传递给回调 我的程序中的函数 然后我让该回调函数调用另一个函数 Python 中的函数 我使用 Boost Python 来包
  • 在哪里可以找到Python内置序列类型的时间和空间复杂度

    我一直无法找到此信息的来源 无法亲自查看 Python 源代码来确定这些对象是如何工作的 有谁知道我可以在网上找到这个吗 结帐时间复杂度 http wiki python org moin TimeComplexitypy dot org
  • 需要一个从 yaml 文件中提取内容并输出为 csv 文件的脚本

    我对 python 很陌生 但我很感激您帮助指导我创建一个简单的脚本 该脚本读取一堆 yaml 文件 同一目录中的大约 300 个文件 并从 yaml 文件并将其转换为 csv yaml 文件中内容的示例 code 9313 degrees
  • 将自定义属性添加到 Tk 小部件

    我的主要目标是向小部件添加隐藏标签或字符串之类的内容 以在其上保存简短信息 我想到创建一个新的自定义 Button 类 在本例中我需要按钮 它继承所有旧选项 这是代码 form tkinter import class NButton Bu

随机推荐

  • java 中unsigned类型的转换

    java 中unsigned类型的转换
  • oh-my-zsh安装与常用插件

    zsh 介绍 工欲善其事 必先利其器 zsh也是一种 shell 兼容最常用的 bash 这种 shell 的命令和操作 bash 虽然很标准 但是自己日常使用方便更重要 oh my zsh 提供了丰富的插件和提 安装 先使用命令查看系统支
  • whisper:robust speech recognition via large-sacle weak supervision

    OpenAI Whisper 精读 论文精读 45 哔哩哔哩 bilibili更多论文 https github com mli paper reading 视频播放量 68331 弹幕量 327 点赞数 2332 投硬币枚数 1192 收
  • QJsonObject的使用示例

    介绍 负责封装JSON对象 是键 值对列表 其中键是惟一的字符串 值由QJsonValue表示 1 QJsonObjec 封装了Json里的对象 接口与QMap相似 都具有size insert 和remove 等操作 还可以使用标准C 迭
  • SQL Server(三)-查询数据(2)

    函数与分组查询数据 一 系统函数 在SQL Server 2008中系统函数是指在SQL Server 2008中自带的函数 主要分为聚合函数 数据类型转换函数 日期函数 数学函数及其他一些常用的函数 1 聚合函数 对一组值进行计算 然后返
  • 雅思词汇表8000词版_你别不信,雅思光靠背单词也能上6.5!

    点击上方蓝字关注我哦 打算备考雅思 大家都是知道IELTS考试对词汇量要求是比较高的 如果自身的英语基础薄弱 想短时间内在雅思成绩上有所突破是很困难的一件事情 因此很多考生会 病急乱投医 购买各式各样雅思词汇手册进行疯狂记忆 每本单词手册都
  • Keil 重定向 fputc 函数 以及 printf 函数的代码尺寸测试

    本文的开发环境为 Keil Cortex M3 内核处理器 重定向 fputc 函数方法 如果想使用库函数 printf 必须要将 fputc 重定向到自己的串口上 术语 重定向 可以理解为用户重写 fputc 函数 在重写的函数体内调用自
  • vulnhub-KIOPTRIX: LEVEL 1.3 (#4)-KioptrixVM4靶场

    以下演示均在测试环境进行 遵纪守法 靶场下载地址 Kioptrix Level 1 3 4 VulnHub 镜像下载解压之后是一个 vhd文件 需要新建虚拟机 虚拟机操作系统任选一个linux系列的系统 一直下一步 到了设置磁盘 按照截图设
  • Qt系列文章之(十) ui文件的使用

    上一篇文章在主函数中构造了一个简单的主窗口界面 继承了一些基本元素 如菜单栏 工具栏 悬浮窗口 主界面等元素 不过这些元素都是在栈区开辟的临时变量 放在主函数里面来实现 这不是一种标准的UI界面开发手段 一般在界面项目开发之中有几个典型的开
  • PyCharm远程连接失败、错误,报错:Can‘t connect...【解决方法与错误分析】

    学习网站推荐 前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住分享一下给大家 点击跳转到网站 文章目录 一 前言 二 报错 2018版 2020版 三 错误分析 我的错误原因 其他3种可能因粗心导致的原因 四 如果你不想再
  • HTTPX从入门到放弃

    1 什么是HTTPX HTTPX是一款Python栈HTTP客户端库 它提供了比标准库更高级别 更先进的功能 如连接重用 连接池 超时控制 自动繁衍请求等等 HTTPX同时也支持同步和异步两种方式 因此可以在同步代码和异步代码中通用 HTT
  • Swift语法学习--协议基础

    文章目录 协议定义 typealias关键词类型定义新的名称 associatedtype增加协议功能 协议定义 typealias关键词类型定义新的名称 不做赘述 typealias Distance Double typealias P
  • 游戏对象与图形基础

    游戏对象与图形基础 这是有游戏编程的第四次作业 对MVC深入 文章目录 游戏对象与图形基础 说明文档 作业内容 1 基本操作演练 建议做 2 编程实践 需求分析 新版的设计与实现 说明文档 本次实验完成了所有基本要求 尽量将步骤展示出 闪光
  • java中把判断大小的字符串转换成可判断的布尔值

    ScriptEngineManager manager new ScriptEngineManager ScriptEngine se manager getEngineByName js String str 1 lt 3 boolean
  • OpenCV

    OpenCV polylines绘制多边形 1 四边形 Mat image 300 300 CV 8UC3 Scalar 255 255 255 300X300大小的白色图像 Point pnt 1 4 Point 100 100 左上角
  • 【计算机网络】Linux环境中的网络套接字编程

    文章目录 前言 一 预备知识 理解源IP地址和目的IP地址 认识端口号 认识UDP协议和TCP协议 了解网络字节序 二 socket 套接字 socket 常见API sockaddr 和 sockaddr in 三 UDP Socket编
  • .Net web service studio的使用

    无意间发现有个比较好的工具 它很小才几十K而已 真的很轻量 就是web service studio 可以用来测试web service 因为web service因为其返回结果的特殊性以及请求的不一样 平时也很难去测试这个接口到底能否使用
  • 系统分析与设计-用例建模之业务建模方法

    系统分析与设计 用例建模之业务建模方法 文章目录 系统分析与设计 用例建模之业务建模方法 使用 UMLet 建模 根据订旅馆建模文档 根据课程练习 投递员使用投递箱给收件人快递包裹 的业务场景 根据上述流程 给出快递柜系统最终的用例图模型
  • csrf攻击原理与解决方法_前端

    1 CSRF 的攻击类型 CSRF 全称 Cross Site Request Forgery 跨站请求伪造 也被称为 XSRF one click attack 或者 session riding 是一种劫持受信任用户向服务器发送非预期请
  • python实战——下载推女郎图片

    说明 python2 7或3 4小脚本 这个小软件是和urllib和urllib2的使用结合了python网页获取异常的处理 原理非常简单 适合初学者练手 功能 下载这个网站上的图片 成果 先放福利啦 分析 首先 想下载网站上的图片就需要获