一、用Delphi10.3模拟读取百度网页,并读取相关头部信息
一、读取网页的如下:
uses
TxHttp,
Classes,
TxCommon,
Frm_WebTool,
SysUtils; var
m_Url: string;
m_Http: TTxHttp;
m_PostData: string;
m_WebSource: string;
m_Stream: TStringStream; begin
m_Http := TTxHttp.Create;
// 网址
m_Url := Trim(Form_WebTool.LabeledEdit1.Text);
if Trim(m_Url) = '' then
begin
Exit;
end; // 设置Header
with m_Http do
begin
Accept := 'text/html, application/xhtml+xml, */*';
//AcceptEncoding := 'gzip, deflate';// 是否以GZIP方式访问网站
AcceptEncoding := '';
AcceptLanguage := 'zh-CN';
ContentType := 'application/x-www-form-urlencoded';
UserAgent := 'Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko';
end; // 设置Cookies
m_Http.SetCookies(Trim(Form_WebTool.Memo4.Text), m_Url); // 设置编码
if Form_WebTool.ComboBox2.Text = 'GB2312' then
begin
m_Http.Encoding := TxGB2312;
end
else
begin
m_Http.Encoding := TxUTF8;
end; // Get还是POST
if Form_WebTool.ComboBox1.Text = 'POST' then
begin
m_WebSource := m_Http.GetEx(m_Url);
end
else
begin
m_PostData := Trim(Form_WebTool.Memo3.Text);
// 网页访问函数
m_WebSource := m_Http.PosEx(m_Url, m_PostData);
end;
// 输出网页源码
Form_WebTool.Memo1.Text := m_WebSource;
// 取COOKIES
Form_WebTool.Memo4.Text := m_Http.Cookies;
// 取Header
Form_WebTool.Memo5.Text := m_Http.GetHttpHead;
m_Http.Free; end.
二、设计的界面如下:
三、 左上的编辑框是我们读取的百度访问的头
Version: HTTP__
StatusCode:
StatusText: OK
Cache-Control: max-age=
Connection: Keep-Alive
Date: Wed, Mar :: GMT
Content-Length:
Content-Type: text/html
Expires: Thu, Mar :: GMT
Last-Modified: Thu, Nov :: GMT
Accept-Ranges: bytes
ETag: "3dec-57b3a9a43af80"
Server: Apache
Vary: Accept-Encoding,User-Agent
---发送的header信息---
Accept: text/html, application/xhtml+xml, */*
AcceptCharSet:
AcceptEncoding:
AcceptLanguage: zh-CN
ContentType: application/x-www-form-urlencoded
UserAgent: Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko
四、中间部分是我们读取的COOKIES
BDSVRTM=;BAIDUID=374DA209DACE0A2722EAFAFA67AEB84F:FG=;
五、最下面就是我们读取的百度的页面内容了。
总结:Delphi10.3读取百度页面是非常简单方便的。
不忘初心,如果您认为这篇文章有价值,认同作者的付出,可以微信二维码打赏任意金额给作者(微信号:382477247)哦,谢谢。
一、用Delphi10.3模拟读取百度网页,并读取相关头部信息的更多相关文章
- Java Socket/HttpURLConnection读取HTTP网页
以读取百度的http网页为例.如果知道了IP地址和端口,然后新建一个Socket,就直接去读百度的首页,根本没反应,原因是www.baidu.com是以http协议传输的,而现在要以Socket原始的 ...
- 模拟登陆百度以及Selenium 的基本用法
模拟登陆百度,需要依赖于selenium 模块,调用浏览器,执行python命令 先来说一下这个selenium模块啦...... 本文参考内容来自 Selenium官网 SeleniumPython ...
- java.net.URL 模拟用户登录网页并维持session
java.net.URL 模拟用户登录网页并维持session 半成品,并非完全有用 import java.io.BufferedReader; import java.io.InputStream ...
- 【教程】模拟登陆百度之Java代码版
[背景] 之前已经写了教程,分析模拟登陆百度的逻辑: [教程]手把手教你如何利用工具(IE9的F12)去分析模拟登陆网站(百度首页)的内部逻辑过程 然后又去用不同的语言: Python的: [教程]模 ...
- Chrome模拟手机浏览网页
用Chrome模拟手机浏览网页,只需要编辑一个命令就可以实现 C:\Users\xxx\AppData\Local\Google\Chrome\Application\chrome.exe --use ...
- 百度网页搜索部来自Console的招聘信息
百度网页搜索部来自Console的招聘信息,小伙伴们,你发现了吗?
- Android 仿百度网页音乐播放器圆形图片转圈播放效果
百度网页音乐播放器的效果 如下 : http://www.baidu.com/baidu?word=%E4%B8%80%E7%9B%B4%E5%BE%88%E5%AE%89%E9%9D%99& ...
- 使用selenium webdriver+beautifulsoup+跳转frame,实现模拟点击网页下一页按钮,抓取网页数据
记录一次快速实现的python爬虫,想要抓取中财网数据引擎的新三板板块下面所有股票的公司档案,网址为http://data.cfi.cn/data_ndkA0A1934A1935A1986A1995. ...
- java.net.URL 模拟用户登录网页并维持session【转】
java.net.URL 模拟用户登录网页并维持session 半成品,并非完全有用 import java.io.BufferedReader; import java.io.InputStream ...
随机推荐
- 使用sa-jdi.jar dump 内存中的class
前言 在分析一个 jar 包时发现他把关键类采用了运行时使用 classloader 的方式加载了.懒得分析算法了,可以使用 jdk 自带的工具 dump 出需要的class. 正文 从运行的java ...
- C语言图形编程
四.图形和图像函数(一) 像素函数 56. putpiel() 画像素点函数 57. getpixel()返回像素色函数(二) 直线和线型函数 58. line() 画线函数 ...
- java基础(二) 自增自减与贪心规则
引言 JDK中提供了自增运算符++,自减运算符--.这两个操作符各有两种使用方式:前缀式(++ a,--a),后缀式(a++,a--).可能说到这里,说不得有读者就会吐槽说,前后缀式都挺简单的,前 ...
- jquery刷新页面的实现代码(局部及全页面刷新)
局部刷新: 这个方法就多了去了,常见的有以下几种: $.get方法,$.post方法,$.getJson方法,$.ajax方法如下 前两种使用方法基本上一样 下面介绍全页面刷新方法:有时候可能会用到 ...
- lua5.3+luasocket
今天安装了luasocket,遇到了很多错误,百度并没有什么针对lua5.3的版本安装luasocket的文章,在这里记录一下. 1.下载lua5.3 下载到了lua-5.3.5.tar.gz版本的l ...
- leetCode题解之Number of Lines To Write String
1.题目描述 2.分析 使用一个map将字母和数字对应起来,方便后续使用. 3.代码 vector<int> numberOfLines(vector<int>& wi ...
- 6.JXL操作Excel
一.简介 jxl是一个韩国人写的java操作excel的工具, 在开源世界中,有两套比较有影响的API可 供使用,一个是POI,一个是jExcelAPI.其中功能相对POI比较弱一点.但jExcelA ...
- springMVC入门-04
这一讲介绍springMVC使用rest风格添加数据的实现.在之前的一讲中添加一个链接跳转到add.jsp页面,对应代码如下所示: <%@ page language="java&qu ...
- SqlServer查询存储过程中包含指定的内容
存储过程太多,有时只记得存储过程里面的某一点类容,想要找到对应的存储过程: SELECT obj.Name 存储过程名, sc.TEXT 存储过程内容 FROM syscomments sc INNE ...
- 铁乐学python_day03-作业
1.有变量name = "aleX leNb" 完成如下操作: 移除name变量对应的值两边的空格,并输出处理结果 n1 = name.strip() print(n1) 结果:a ...