以下是一个简单的PHP采集新闻并将其存入数据库的示例代码:
<?php
// 创建数据库连接
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("数据库连接失败: " . $conn->connect_error);
}
// 采集新闻
$url = "http://example.com/news"; // 新闻网址
$html = file_get_contents($url); // 获取网页内容
// 解析HTML
$dom = new DOMDocument();
libxml_use_internal_errors(true); // 忽略HTML解析错误
$dom->loadHTML($html);
libxml_clear_errors();
$newsList = $dom->getElementsByTagName("a");
// 遍历新闻列表
foreach ($newsList as $news) {
$title = $news->nodeValue; // 新闻标题
$link = $news->getAttribute("href"); // 新闻链接
// 将新闻存入数据库
$sql = "INSERT INTO news (title, link) VALUES ('$title', '$link')";
if ($conn->query($sql) === TRUE) {
echo "新闻已成功入库";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
// 关闭数据库连接
$conn->close();
?>
请注意,在实际使用中,你需要根据你的数据库配置和网页结构进行适当的修改。此外,还需要确保你的PHP环境支持DOM扩展和文件读取函数。
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站