一、用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 ...
随机推荐
- Android设备网络、屏幕尺寸、SD卡、本地IP、存储空间等信息获取工具类
Android设备网络.屏幕尺寸.SD卡.本地IP.存储空间.服务.进程.应用包名等信息获取的整合工具类. package com.qiyu.ddb.util; import android.anno ...
- Android中的color使用
1.系统颜色 android内置的颜色,比如系统资源中定义的颜色,有以下几个:BLACK(黑色),BLUE(蓝色),CYAN(青色),GRAY(灰色),GREEN(绿色),RED(红色),WRITE( ...
- 福大软工1816:Beta(5/7)
Beta 冲刺 (5/7) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务 文字/口头描述 组织会议 确定统一界面wxpy.db之 ...
- MongoDB用户配置
MongoDB学习笔记—权限管理 阅读目录 1.MongoDB权限介绍 2 MongoDB添加管理员账户 3 MongoDB开启用户权限验证 4 MongoDB的roles角色简单介绍 5 Mongo ...
- 在 Azure 中的 Linux 虚拟机上使用 SSL 证书保护 Web 服务器
若要保护 Web 服务器,可以使用安全套接字层 (SSL) 证书来加密 Web 流量. 这些 SSL 证书可存储在 Azure Key Vault 中,并可安全部署到 Azure 中的 Linux 虚 ...
- Oracle EBS 获取完全的值集信息
SELECT fvs1.flex_value_set_name, fvs1.description, decode(upper(fvs1.longlist_flag), 'N', '值列表', 'Y' ...
- Java 使用stringTemplate导出大批量数据excel(百万级)
目前java框架中能够生成excel文件的的确不少,但是,能够生成大数据量的excel框架,我倒是没发现,一般数据量大了都会出现内存溢出,所以,生成大数据量的excel文件要返璞归真,用java的基础 ...
- 安装matplotlib
1.1 Linux中安装matplotlib 如果使用的系统自带的python版本,可使用系统的包管理器安装matplotlib,命令如下: $ sudo apt-get install python ...
- 转:.NET中的三种Timer的区别和用法(转)
//1.实现按用户定义的时间间隔引发事件的计时器.此计时器最宜用于 Windows 窗体应用程序中,并且必须在窗口中使用. System.Windows.Forms.Timer // 2.提供以指定的 ...
- Redis 入门之基础
1.安装 redis-windows redis服务端下载 redis客户端下载 redis官网 redis中文网 1.1 Window下安装 redis-server.exe redis.windo ...