当前位置: 首页 > news >正文

更合网站设计定制平台

更合网站设计,定制平台,在线设计平台教学,程序员 做 个人网站想用程序去抓取一个网页的内容#xff0c;Delphi 有自己的 HTTP 库。比如 Indy 的 TIdHTTP#xff0c;或者 TNetHTTPClient。 这里测试一下使用 Python 的 HTTP 库抓取网页#xff0c;然后把抓取的内容给 Delphi 的程序。 Delphi 程序#xff0c;界面上拖控件如下#x…想用程序去抓取一个网页的内容Delphi 有自己的 HTTP 库。比如 Indy 的 TIdHTTP或者 TNetHTTPClient。 这里测试一下使用 Python 的 HTTP 库抓取网页然后把抓取的内容给 Delphi 的程序。 Delphi 程序界面上拖控件如下 Panel1: TPanel;Button1: TButton;PageControl1: TPageControl;TabSheet1: TTabSheet;TabSheet2: TTabSheet;Memo1: TMemo;Splitter1: TSplitter;Memo2: TMemo;PythonEngine1: TPythonEngine;PythonDelphiVar1: TPythonDelphiVar;EdgeBrowser1: TEdgeBrowser;Button2: TButton;PythonGUIInputOutput1: TPythonGUIInputOutput; 上述控件的主要设置 1. PythonEngine1.IO : PythonGUIInputOutput1; 2. PythonGUIInputOutput1.Output : Memo1;  //用 Memo1 来显示 Python 代码打印出来的网页内容。 3. PythonDelphiVar1.Engine : PythonEngine1; 4. PythonDelphiVar1.VarName : MyHTML; //这个变量名称会在 Python 代码里面使用。 5. 在 Memo2.Lines 里面放 Python 代码。 6. EdgeBrowser1 用于显示由 Python 抓回来的页面内容。 Delphi 的主要代码如下 procedure TForm3.Button1Click(Sender: TObject); vari: Integer; beginEdgeBrowser1.Navigate(D:\test.html);//循环等待 EdgeBrowser1 打开完成。否则当 Python 抓取到页面后写入 EdgeBrowser 会失败。i : 0;while True dobeginSleep(100);Inc(i);Application.ProcessMessages;if i 10 then Break;end;PythonEngine1.ExecStrings(Memo2.Lines); end;procedure TForm3.Button2Click(Sender: TObject); varS: string; begin // S : htmlhead/headbodyabc 12333 p hello world!!!/body/html;S : VarToStr(PythonDelphiVar1.Value);ShowHTML(S); end;procedure TForm3.PythonDelphiVar1SetData(Sender: TObject; Data: Variant); varS: string; begin//ShowMessage(写页面);S : VarToStr(Data);ShowHTML(S); end;procedure TForm3.ShowHTML(const S: string); begin {--------------------------------------------------------------------------使用 EdgeBrowse 必须1. 当前目录下有 WebView2Loader.dll2. 必须先 Navigate 打开后才能 NavigateToString --------------------------------------------------------------------------}EdgeBrowser1.NavigateToString(s);end;Python 代码如下 import http.client# 页面的路径blog.csdn.net/pcplayerconn http.client.HTTPSConnection(blog.csdn.net) # 工作正常这里只能填写站点名称。子路径在 request 里面填写。conn.request(GET, /pcplayer) response conn.getresponse() print(response.status, response.reason) data response.read() print(data.decode()) # 这里是输出的网页内容# MyHTML 是 Delphi 的控件对应的变量它被赋值时会在 Delphi 代码里触发 OnSetData 事件。 # Delphi 程序在这个 OnSetData 事件里面拿到页面内容写到浏览器里面去让浏览器显示。 MyHTML.value data.decode()# print 把页面内容输出这个输出在 Delphi 程序里面会显示到 Memo1 里面。 print(response.url) conn.close()简单解释 1. Delphi 程序里面的 EdgeBrowser 加载一个 test.html 页面。加载这个页面是为了打开这个 Browser 方便后继写入抓取的页面内容。 2. PythonEngine1 执行 Memo2 里面的 Python 代码 3. PythonGUIInputOutput1 将 Python 代码执行后的 print 语句的内容输出到 Memo1 里面。这里是程序抓取到的网页内容。 4. PythonDelphiVar1 获取到 Python 代码里面的 MyHTML.Value 的值也就是页面内容。并将这个内容写入 EdgeBrowser 浏览器显示。 运行效果图 上面这个图显示了 Memo1 里面呈现的网页内容 下面这个图显示了抓取的网页用浏览器显示的样子 总结 在 Delphi 里面通过使用 Python4Delphi 控件可以在 Delphi 程序里面调用 Python 的代码去执行 HTTP 访问。
http://www.hkea.cn/news/14415541/

相关文章:

  • 公司网站文章wordpress换模板
  • 会展类网站模板企业网站有哪些类型
  • 深圳网站建设力荐上榜网络手机什么app做网站
  • 高大上公司网站minty wordpress
  • 网站建设自助搭配系统wordpress前台编辑
  • 2016市网站建设总结为什么辽宁省城乡建设厅网站打不开
  • 网网站建设设计公司淘宝购物返利网站建设app
  • 制作简历的免费网站深圳seo优化seo关键词
  • 个人网站电商怎么做中英文双语网站怎么做
  • 一站式做网站哪家专业网站平均停留时间
  • 本地邵阳网站建设北京中高端网站建设公司
  • 中小企业官方网站昆山企业做网站
  • 网站开发 链接指向文件夹网站后台管理默认密码
  • 赣州网站建设效果wordpress在线计算程序
  • 北京恒伟网站建设机房建设网站模板
  • 做网站广告词淘客网站后台怎么做
  • asp网站浏览器兼容多语言社交网站开发
  • 怎么上传网站到ftp泰安创意网络公司
  • 贵阳网站建设培训学校要学做网站
  • 做数学题网站在线图片处理工具
  • 青岛做网站找哪家好哪里有手机网站建设公司
  • 长沙做企业网站的公司合肥网站建设怎么做
  • 网站开发河南wordpress 邮箱激活
  • 做网站运营的股票用第三方做网站
  • 做企业网站需要提供什么湖北省建设厅的网站
  • 网站更新文章首页不显示佛山网站制作网址
  • 衡水网站建设地方比价网站源码
  • 什么语言开发网站为女朋友做的网站
  • 专做医药中间体的网站和田地seo
  • 品牌网站官网wordpress模板制作教程视频