使用Delphi的网站获取JSON数据[关闭](Getting JSON data from a w

2019-08-21 19:38发布

有本网站http://www.ingress.com/intel

要访问该网站,我们必须登录使用的用户名和密码。

一旦访问该网站使用JSON用于其数据。

我是新来这个JSON的事情。

任何人都可以给一个普通的例子如何使用Delphi的网站获取JSON数据?

我用Delphi 7的方式。

谢谢。

Answer 1:

这是两个问题。

  1. 如何从HTTP服务器文件
  2. 如何解析JSON字符串

对于第一个问题,有很多的图书馆,其中一些的:

  1. 互联网直又名印插座(用Delphi和分布式http://www.indyproject.org/ )
  2. 互联网组件套件又名ICS http://www.overbyte.be
  3. 亚拉腊突触http://synapse.ararat.cz/
  4. UrlListGrabber从JEDI VCL http://jvcl.sf.net
  5. 窗户InternetReadFile http://msdn.microsoft.com/en-us/library/windows/desktop/aa385103.aspx
  6. ......和许多许多。

例如,这是从互联网上获取文件的样本: http://synapse.ararat.cz/doku.php/public:howto:httpgetpage

或者换个LIB的演示(实际上每解放运动在他们,从HTTP加载文件是如此常见的任务...):

  • http://jvcl.svn.sourceforge.net/viewvc/jvcl/trunk/jvcl/examples/JvProgramVersionCheck/
  • http://jvcl.svn.sourceforge.net/viewvc/jvcl/trunk/jvcl/examples/JvUrlListGrabber/

你从网上下载的内容为JSON解析器,之后,这是一个较窄的选择:JSON是一个相对较新的趋势,许多JSON解析器大量使用德尔福的功能2009+
我个人认为你最好尝试使用JSON解析器mORMot项目。 该项目还拥有HTTP层,也许你可以使用自己的代码来读取通过HTTP文件中。

有实例或分析JSON字符串:

  • http://blog.synopse.info/post/2012/05/03/Custom-JSON-serialization-of-records
  • http://blog.synopse.info/post/2012/04/13/Custom-JSON-serialization-of-any-class
  • http://blog.synopse.info/post/2012/04/12/Custom-JSON-serialization-of-any-dynamic-array-content

在更多信息http://synopse.info/和http://blog.synopse.info/tag/JSON

他们也有论坛,社区响应。

超对象,而原本围绕仿制药(自2010年德尔福实际工作)而建,也有德尔福7的兼容性,但它的一些特性是行不通的。 见http://code.google.com/p/superobject/wiki/first_steps

而你总是可以搜索更多的库http://www.torry.net



Answer 2:

我怀疑这将是相当困难的登入从Delphi应用程序这个特定的网站。

您将需要通过谷歌帐户登录,并如预期处理cookie。

因此,我怕你将无法使用任何直接印/突触/ ICS /库的WinINet访问数据。

你可能需要在应用程序中嵌入完整的浏览器,然后访问该内容但从JavaScript的角度,从您的应用程序远程处理浏览器。

看看这些组件:

  • TWebBrowser (即互联网浏览器)可用在Delphi;
  • 德尔福铬 。

然后,你将不得不解析JSON内容。 但是,你必须首先确保您可以登录该应用程序!



文章来源: Getting JSON data from a website using Delphi [closed]