大家如果经常在逛贴吧的时候,会看到很多帖子里有很多好看的图片,都想下载下来留存的话,常规的方法只能一张一张点击右键,然后图片另存为,这样的方法对于图片少的来说没什么,要是图片超过100张,200张,那可就痛苦了,今天就为大家介绍一下如何利用delphi去爬取贴吧帖子的图片。

delphi的爬虫思考

第一步,打开任意一个贴吧,比如图片吧。

打开图片吧

第二步,在贴吧里随意找个有很多图片的帖子。

有很多图片的帖子

第三步,在任意一层有图片的楼层,右键单击图片,选择检查。

右键单击检查

第四步,在页面显示出的源码界面,会看到被选中的代码,此行代码就是图片的下载地址了。

看到源码里的地址

第六步,然后我们复制这个地址前面的一段代码。这个代码就是所有楼层图片在网页源码中的标识型前缀,可以作为图片的识别标识。

复制这段代码

第七步,打开delphi,新建一个VCL Application Form,添加一个labelededit控件,3个button控件,2个memo控件,1个idhttp控件,1个IdSSLIOHandlerSocketOpenSSL控件,如下图,排列方式可以根据自己喜好自行调整。

程序主界面

第八步,主要代码在后面三个button里写。如下:

获取源码button:

图片地址button:

保存到文件夹button:

说明:

①对https的get,是需要有2个动态链接库支持的,分别是libeay32.dll和ssleay32.dll,把最新版本的这2个文件放到编译好的程序同文件夹下即可。

②Idhttp的IOhandler别忘了设置为IdSSLIOHandlerSocketOpenSSL控件。

③程序代码已经可以简单地实现下载帖子当前页的所有楼层图片。

下面是运行效果

程序运行效果

下载完成的图片


总结:通过以上的方式可以完成任意帖子当前页的图片下载,那么问题来了,如果我想下载好多页的图片怎么办呢,大家可以根据我前面几步的网页分析方式,去找到打开页码的源码,在delphi中执行循环打开页面,并将页面地址赋值到idhttp的get里,接下来水到渠成,这是我自己的爬取数据的思路,这里面的步骤都是可以放到一起一键完成,代码也是可以精简的,重要的是思路明确,代码优化和功能增强可以慢慢实现。

虽说目前Python爬取网页数据比较火,但是delphi爬取数据也是毫无压力,我技术有限,就抛砖引玉了。

Delphi编程之爬取贴吧帖子图片的更多相关文章

  1. Delphi编程之爬取贴吧多页帖子图片

    接着上一篇文章说一下我们如何爬取多页帖子的图片. 第一步,还是随便找个贴吧,这次我们就找图片相对较少的射雕英雄传吧. 把页面拉到最底下,在页码区域单击右键,选择检查. 在这里我们看到了页码的代码区域, ...

  2. Delphi编程之爬取贴吧图片最终版

    接着前面两篇文章的内容,我们今天把这个贴吧爬取图片的程序完善,让它具有可以下载贴吧多页和帖子多页图片的能力. 主界面设计如下,包含3个labelededit,3个button,1个memo,1个str ...

  3. python爬取某个网页的图片-如百度贴吧

    python爬取某个网页的图片-如百度贴吧 作者:vpoet mail:vpoet_sir@163.com 注:随意copy,不用告诉我 #coding:utf-8 import urllib imp ...

  4. python爬取某个网站的图片并保存到本地

    python爬取某个网站的图片并保存到本地 #coding:utf- import urllib import re import sys reload(sys) sys.setdefaultenco ...

  5. python网络爬虫之解析网页的正则表达式(爬取4k动漫图片)[三]

    前言 hello,大家好 本章可是一个重中之重,因为我们今天是要爬取一个图片而不是一个网页或是一个json 所以我们也就不用用到selenium模块了,当然有兴趣的同学也一样可以使用selenium去 ...

  6. Python 爬取陈都灵百度图片

    Python 爬取陈都灵百度图片 标签(空格分隔): 随笔 今天意外发现了自己以前写的一篇爬虫脚本,爬取的是我的女神陈都灵,尝试运行了一下发现居然还能用.故把脚本贴出来分享一下. import req ...

  7. C#爬取微博文字、图片、视频(不使用Cookie)

    前两天在网上偶然看到一个大佬OmegaXYZ写的文章,Python爬取微博文字与图片(不使用Cookie) 于是就心血来潮,顺手撸一个C#版本的. 其实原理也很简单,现在网上大多数版本都需要Cooki ...

  8. 使用BeautifulSoup自动爬取微信公众号图片

    爬取微信分享的图片,根据不同的页面自行修改,使用BeautifulSoup爬取,自行格局HTML修改要爬取图片的位置 import re import time import requests imp ...

  9. Python爬取 | 唯美女生图片

    这里只是代码展示,且复制后不能直接运行,需要配置一些设置才行,具体请查看下方链接介绍: Python爬取 | 唯美女生图片 from selenium import webdriver from fa ...

随机推荐

  1. 【C/C++】C++11 Variadic Templates

    Variadic Templates 1.function template:利用“参数个数逐一递减”的特性,实现递归函数调用 template <typename T, typename... ...

  2. markdown首行缩进

    首行缩进两个字符:(每个表示一个空格,连续使用两个即可)   半角的空格  全角的空格

  3. 学号 2018-2019-20175212 实验一 《Java开发环境的熟悉》

    学号 2018-2019-20175212 实验一 <Java开发环境的熟悉> 一.实验内容及步骤 1.使用JDK编译.运行简单的Java程序 mkdir 20175212exp1创建20 ...

  4. 用HTML+CSS编写一个计科院网站首页的静态网页

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. linux常用命令 echo输出命令

    echo输出命令 'echo [选项] [输出内容]' 选项 '-e' 支持反斜线控制的字符转换 控制字符​ \a 输出警告音 \b 退格键,也就是向左删除键 \n 换行符 \r 回车键 \t 制表符 ...

  6. Word中使用宏处理表格内容 小记

    不解释,直接上代码... Sub 删除表格列WT0818() '此符号是注释 ' 删除表格列WT0818 宏 ' For Each tb In ActiveDocument.Tables  //wor ...

  7. csv文件读写处理

    csv文件读写处理   1.读取 第一种:   import csv with open("route.csv","r") as f: #reader是一个迭代 ...

  8. GIT 生成公钥

    ssh-keygen -t rsa -C "xxxxx@xxxxx.com" cat ~/.ssh/id_rsa.pub

  9. Linux VPS自动定时备份网站文件和MYSQL数据库到FTP空间(LNMP)

    如果我们网站更新不是很频繁,我们可以定期手动进行备份网站文件和MYSQL数据库导出.如果我们网站数据更新频繁,且数据尤为重要,建议要采用定期自动 备份,至少需要多备份数据,无论我们选择何种优秀的VPS ...

  10. mybatis支持jdk8等localdate类型

    大家知道,在实体Entity里面,可以使用java.sql.Date.java.sql.Timestamp.java.util.Date来映射到数据库的date.timestamp.datetime等 ...