PHP 魔法:从网页中提取任意文本
为了从网页中提取文本,我们仅需检索 HTML 内容,并从中提取 HTML 元素所包含的文本信息。
从头开始编写 PHP 代码以实现特定目标固然可能耗时费力——然而,值得庆幸的是,我们无需为此编写任何全新代码。实际上,我们只需利用一段现成的 PHP 代码示例,即可轻松调用一个免费的 API,让它为我们完成整个流程。
首先,让我们来安装客户端 SDK。通过从命令行运行以下命令,我们可以借助 Composer
来完成安装过程:
composer require cloudmersive/cloudmersive_document_convert_api_client
接下来,我们需要获取一个免费的 Cloudmersive API
密钥,以便对我们的请求进行授权。这个密钥将允许我们每月进行最多 800 次的 API 调用,但请放心,这并没有任何承诺或义务。一旦达到这个调用限制,总数将在下个月自动重置。
接下来,我们将构建一个输入请求,该请求将捕获所需的网页 URL。您可以参考下面的 JSON 示例进行操作:
{
"Url": "string"
}
最后,请按照以下步骤调用该函数。首先,请将您的 API 密钥复制并粘贴到 $config
片段中指定的位置。接着,传递所需的输入请求参数给该函数。完成这些步骤后,该函数将被成功调用。
<?php
require_once(__DIR__ . '/vendor/autoload.php');
// 配置API密钥授权:Apikey
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('Apikey', 'YOUR_API_KEY');
$apiInstance = new Swagger\Client\Api\ConvertWebApi(
new GuzzleHttp\Client(),
$config
);
$input = new \Swagger\Client\Model\UrlToTextRequest(); // \Swagger\Client\Model\UrlToTextRequest | HTML 到文本请求参数
try {
$result = $apiInstance->convertWebUrlToTxt($input);
print_r($result);
} catch (Exception $e) {
echo 'Exception when calling ConvertWebApi->convertWebUrlToTxt: ', $e->getMessage(), PHP_EOL;
}
?>
此操作将生成一个文本字符串,其中完整地包含了网页URL所对应的所有文本内容。
发表评论