一、用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 ...
随机推荐
- windows域渗透实战
测试环境 域控: 192.168.211.130 已经控制的机器: 192.168.211.133 获取网络信息 查看机器的网络信息 ipconfig /all # 查看 网卡信息,获取dns 服务器 ...
- hornor8改user模式为debug模式
在学习Android软件安全的过程中,经常要用到Android的动态调试.但是呢,一般的Android应用在发布的时候都是发布版的不能直接被调试,为了能使Android应用能够支持调试就需要对Andr ...
- UBUNTU16.04 连接不了cn.archive.ubuntu.com
ubuntu系统更换源 更换源的方法非常简单:修改/etc/apt/sources.list文件即可 进入目录 /etc/apt cd /etc/apt修改sources.list文件 sudo vi ...
- TreeView控件概述、属性与方法
1.作用:用于显示Node结点的分层列表.2.添加到控件箱菜单命令:工程 | 部件,在部件对话框中选择:Microsoft Windows Common Controls 6.03.TreeView控 ...
- KHFlatButton
KHFlatButton https://github.com/kylehorn/KHFlatButton 效果: 对于自己做demo来说,每次设置button就不用这么折腾了,几句话就行了,非常爽: ...
- 生成器-yield初接触
什么是生成器? 生成器的实质就是迭代器 在python中有三种方式来获取生成器 1. 通过生成器函数 2. 通过各种推导式实现生成器 3. 通过数据的转换也可以获取生成器 将函数中的return换成y ...
- 逆向分析-IDA动态调试WanaCrypt0r的wcry.exe程序
0x00 前言 2017年5月12日全球爆发大规模蠕虫勒索软件WanaCrypt0r感染事件,各大厂商对该软件做了深入分析,但针对初学者的分析教程还比较少,复现过程需要解决的问题有很多,而且没有文章具 ...
- php中empty(),isset(),is_null(),==,===区别
有关 PHP 的 empty(),isset() 还有 is_null() 这三个函数的用法讨论得已经很多了,而且很多资料也未必能说得很清楚.这里再重复一次,但不是从概念去说,直接用程序例子来说话,应 ...
- [EffectiveC++]item43:学习处理模板化基类内的名称
- 团队作业4(Alpha版本)
项目名称:音乐播放器 项目成员: 张慧敏(201421122032) 苏晓薇(201421031033) 欧阳时康(201421122050) 会议记录: 主要讨论任务的分配和实现过程中已实现和未实 ...