用Delphi获取全文提要

用Delphi获取全文提要,delphi,http,rss,feed,full-text-search,Delphi,Http,Rss,Feed,Full Text Search,我正在开发一个Delphi程序,通过组件Indy idHTTP读取提要的源代码。。但是feed并不完整,只显示其摘要,我的意思是feed没有显示“content”标签 我认为获得全文提要是可能的,因为我在互联网上找到了一些可以显示全文提要的站点(比如),即使对于只显示摘要的提要也是如此 我应该怎么做才能通过Delphi阅读全文提要? 是否有特定的Delphi组件来执行此操作,或者我可以使用idHTTP执行此操作 任何帮助都将不胜感激 谢谢大家 除了Indy之外,Delphi还有其他用于TCP/I

我正在开发一个Delphi程序,通过组件Indy idHTTP读取提要的源代码。。但是feed并不完整,只显示其摘要,我的意思是feed没有显示“content”标签

我认为获得全文提要是可能的,因为我在互联网上找到了一些可以显示全文提要的站点(比如),即使对于只显示摘要的提要也是如此

我应该怎么做才能通过Delphi阅读全文提要? 是否有特定的Delphi组件来执行此操作,或者我可以使用idHTTP执行此操作

任何帮助都将不胜感激

谢谢大家

  • 除了Indy之外,Delphi还有其他用于TCP/IP的内置控件。试一个,看看你是否得到不同的结果。即使作为一个实验,它也只需要大约30秒(将组件拖放到表单上,设置URL,获取结果,然后查看结果)。对吗

  • 如果有问题的网站没有给你一个全文提要,我不知道任何Delphi组件会自动为你获取它。这里有一个很好的链接,介绍了一些从部分RSS内容中获取信息的启发式方法:

    以及使用Delphi解析RSS的教程:

  • 最后,似乎有许多web应用程序可以为您获取全文RSS:

    也许你可以将这些服务之一集成到你的应用程序中


  • 对于许多web应用程序,从web服务器返回的文档可能依赖于HTTP GET请求中的附加头,例如Accept头

    默认情况下,Indy将其设置为
    text/html,*.*

    尝试将其设置为
    application/rss+xml
    ,然后服务器应回复完整的rss内容:

    ...
    IdHTTP1.Request.Accept := 'application/rss+xml';
    Response := IdHTTP1.Get(url);
    ...
    

    似乎当RSS/Atom提要没有全文内容时,获取它的方法是进入提要的URL,并通过innerHTML/outerHTML提取全文。。下面是一个很好的例子:

    PHP源代码(AGPL v3许可证):

    我可以在Delphi上完成,不过需要一些时间来完成。。 另一方面,正如Paulsm4上面所说的,将这些服务之一集成到你的应用程序中可能会很好


    所以..嗯。。目前,我正在考虑在我的应用程序中提供两个选项(获取全文的逻辑和集成):

    嗨,美赞臣,谢谢你的回复!我尝试过“应用程序/rss+xml”,但也遇到了同样的情况。嗨,paulsm4,谢谢你的回复!似乎当RSS/Atom提要没有全文内容时,获取它的方法是进入提要的URL,并通过innerHTML/outerHTML提取全文。。下面是一个很好的例子:PHP源代码(AGPLV3许可证):我可以在Delphi上完成,不过这需要一些时间。。另一方面,正如您所说,将这些服务之一集成到您的应用程序中可能会很好。所以..嗯。。目前,我正在考虑在我的应用程序中提供两个选项(获取全文的逻辑和集成):你说,“有问题的网站[fulltextrssfeed.com]没有给你一个全文提要。”你能详细介绍一下吗?在我看来,它是在大多数饲料,我已经通过它运行。谢谢