我正在使用LAMP构建开发社交媒体平台。到目前为止,我的用户可以上传图片和视频,并对其进行评论和投票。我希望用户能够发布文章的URL链接,并自动弹出标题,图像和描述,就像在Facebook上一样。我猜大多数包含文章的网页都包含某种元数据,这些元数据允许像我这样的开发人员系统地访问标题,描述字段等。如果是这种情况,那么具体如何访问这些元数据。否则,Facebook如何做到这一点?
谢谢,
答案 0 :(得分:0)
您可以使用PHP HTML解析库,它允许您输入URL,并根据您的选择分解元信息。
StackOverflow上的这个答案有一个很好的PHP可用HTML解析选项列表:https://stackoverflow.com/a/3577662/1332068
答案 1 :(得分:0)
这会从您输入的任何有效网址中删除所有图片:
<?php
if(isset($_POST['link'])){
$link = $_POST['link'];
$scrapings = "";
$article = new DOMDocument;
$article ->loadHTMLFile($link);
$titles = $article->getElementsByTagName("title");
foreach($titles as $title){
echo $title->nodeValue, PHP_EOL;
}
$images = $article->getElementsByTagName("img");
foreach($images as $image){
$source = $image->getAttribute("src");
$scrapings .= '<img src="'.$source.'" alt="default">';
}
}
?>
<!DOCTYPE html>
<html>
<head></head>
<body>
<form method="POST" action="article_system.php">
<input type="text" name="link">
<input type="submit" value="submit">
</form>
<?php echo $scrapings; ?>
</body>
</html>