Delphi编程之爬取贴吧帖子图片
大家如果经常在逛贴吧的时候,会看到很多帖子里有很多好看的图片,都想下载下来留存的话,常规的方法只能一张一张点击右键,然后图片另存为,这样的方法对于图片少的来说没什么,要是图片超过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编程之爬取贴吧帖子图片的更多相关文章
- Delphi编程之爬取贴吧多页帖子图片
接着上一篇文章说一下我们如何爬取多页帖子的图片. 第一步,还是随便找个贴吧,这次我们就找图片相对较少的射雕英雄传吧. 把页面拉到最底下,在页码区域单击右键,选择检查. 在这里我们看到了页码的代码区域, ...
- Delphi编程之爬取贴吧图片最终版
接着前面两篇文章的内容,我们今天把这个贴吧爬取图片的程序完善,让它具有可以下载贴吧多页和帖子多页图片的能力. 主界面设计如下,包含3个labelededit,3个button,1个memo,1个str ...
- python爬取某个网页的图片-如百度贴吧
python爬取某个网页的图片-如百度贴吧 作者:vpoet mail:vpoet_sir@163.com 注:随意copy,不用告诉我 #coding:utf-8 import urllib imp ...
- python爬取某个网站的图片并保存到本地
python爬取某个网站的图片并保存到本地 #coding:utf- import urllib import re import sys reload(sys) sys.setdefaultenco ...
- python网络爬虫之解析网页的正则表达式(爬取4k动漫图片)[三]
前言 hello,大家好 本章可是一个重中之重,因为我们今天是要爬取一个图片而不是一个网页或是一个json 所以我们也就不用用到selenium模块了,当然有兴趣的同学也一样可以使用selenium去 ...
- Python 爬取陈都灵百度图片
Python 爬取陈都灵百度图片 标签(空格分隔): 随笔 今天意外发现了自己以前写的一篇爬虫脚本,爬取的是我的女神陈都灵,尝试运行了一下发现居然还能用.故把脚本贴出来分享一下. import req ...
- C#爬取微博文字、图片、视频(不使用Cookie)
前两天在网上偶然看到一个大佬OmegaXYZ写的文章,Python爬取微博文字与图片(不使用Cookie) 于是就心血来潮,顺手撸一个C#版本的. 其实原理也很简单,现在网上大多数版本都需要Cooki ...
- 使用BeautifulSoup自动爬取微信公众号图片
爬取微信分享的图片,根据不同的页面自行修改,使用BeautifulSoup爬取,自行格局HTML修改要爬取图片的位置 import re import time import requests imp ...
- Python爬取 | 唯美女生图片
这里只是代码展示,且复制后不能直接运行,需要配置一些设置才行,具体请查看下方链接介绍: Python爬取 | 唯美女生图片 from selenium import webdriver from fa ...
随机推荐
- vue手把手教你实现走马灯商品左右轮播图
<template> <div> <div class="back_add"> <div class="threeImg&quo ...
- index.html jquery
index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- 配置python3
1. 下载解压.$ wget https://www.python.org/ftp/python/3.4.1/Python-3.4.1.tgz$ tar zxvf Python-3.4.1.tgz 2 ...
- kafka 消费模型图
- java无锁化编程一:目录
假设我们用netty做服务,当接受到网络传输的码流,我们通过某种手段将这种传输数据解析成了熟悉的pojo,那这些pojo该如何进一步处理? 比如游戏中的抢购.场景业务等,对处理那种高并发的业务场景,如 ...
- Java集合类(转自hey平平)
一.集合与数组 数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用. ...
- [Codeforces178F2]Representative Sampling
Problem 给定n个字符串Si,任意选出k个字符串Ai,使得其中任意两个字符串lcp之和最大. Solution 建一棵trie树,枚举每一个节点对答案的贡献,树形dp,时间复杂度像是O(N^3) ...
- spring MVC 入门:
概述: MVC: M model 模型,除控制和视图以外,都可以成为模型. V view 视图,JSP,HTML,ASP,PHP,XHTML,FREEMARK,JSF,直接与用户做交互的资源. C c ...
- 可视化布局html5
http://www.bootcss.com/p/layoutit/ http://layuiout.magicalcoder.com/magicaldrag-admin/drag
- JavaScript中事件委托(事件代理)详解
在JavaScript的事件中,存在事件委托(事件代理),那么什么是事件委托呢? 事件委托在生活中的例子: 有三个同事预计会在周一收到快递.为签收快递,有两种办法:一是三个人在公司门口等快递:二是委托 ...