Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 关键词错误,从网站中提取内容。哎呀_Php_Database_Oop_Keyword - Fatal编程技术网

Php 关键词错误,从网站中提取内容。哎呀

Php 关键词错误,从网站中提取内容。哎呀,php,database,oop,keyword,Php,Database,Oop,Keyword,我在从网站(wiki文章)提取关键词时遇到了一个问题,提取的关键词不完全是关键词,它们是从html中提取的词,而不是网站的词 我使用以下代码: include("Extkeys.php"); [...] if (empty($keywords)){ $ekeywords = new KeyPer; $keywords = $ekeywords->Keys($webhtml); } “Extkeys”的代码是: 假设我理解您的问题,我认为简单地执行以下操作就是您正在寻找的解决方案 这将从U

我在从网站(wiki文章)提取关键词时遇到了一个问题,提取的关键词不完全是关键词,它们是从html中提取的词,而不是网站的词

我使用以下代码:

include("Extkeys.php");
[...]
if (empty($keywords)){
$ekeywords = new KeyPer;
$keywords = $ekeywords->Keys($webhtml);
}
“Extkeys”的代码是:


假设我理解您的问题,我认为简单地执行以下操作就是您正在寻找的解决方案

这将从URL(例如)读取HTML并使用该URL生成键,而不需要将HTML作为参数

function Keys($url) { 
    $webhtml = file_get_contents($url);

您希望首先从页面中提取内容,然后搜索关键字。也就是说,你想从页面中找到实际的内容,并将内容剥离为边栏、页脚等。 只有谷歌的HTML内容提取,有很多关于这方面的文章

我在java中做过一次,有一个叫做“我不确定是否有PHP端口/接口”的库,快速的谷歌搜索没有发现任何东西。但我相信PHP也有类似的库

摆脱HTML而不是专门搜索页面内容的最简单方法是使用正则表达式剥离所有HTML,比如
s/]+>//g
。然而,对于搜索引擎来说,这可能不是最好的方法,因为你最终会得到很多垃圾,可能会扰乱你的密钥提取


编辑:这里有一篇关于的文章。

谢谢你的回复。我测试了代码,并在第一个代码中将“$html”替换为“$url”。但还是和以前一样。如果我不替换,只给出“测试”。顺致敬意,然后,您必须将上面的调用更改为
$keywords=$ekeywords->Keys('http://en.wikipedia.org/wiki/Searchengine');您好,按照您所说的使用代码,但仍然显示相同的结果。我还使用代码来创建许多页面,所以我使用$url。
function Keys($url) { 
    $webhtml = file_get_contents($url);