<?php
$url = 'https://movie.douban.com/subject/36069854'; // 替换为你想要获取源码的网页URL
// 使用file_get_contents获取网页源码
$html = file_get_contents($url);
// 输出网页源码
//echo htmlspecialchars($html); // 使用htmlspecialchars是为了避免输出中的HTML标签被浏览器解析
// 创建一个 DOMDocument 对象
$dom = new DOMDocument();
// 加载 HTML 字符串
@$dom->loadHTML('<?xml encoding="UTF-8">' . $html); // 注意:这里使用 home.php?mod=space&uid=70631 来抑制可能的警告
// 创建一个 DOMXPath 对象
$xpath = new DOMXPath($dom);
// 使用 XPath cha询来选择 id 为 info 的元素
$infoNode = $xpath->query('//*[@id="info"]')->item(0);
echo $string = $infoNode->nodeValue; // 输出:这是信息内容
emodiyu 发表于 2024-5-10 13:54
在需要换行的地方使用 \n
echo $string = $infoNode->nodeValue . "\n"; // 使用 \n 作为换行符 ...
qq73s5456 发表于 2024-5-10 13:55
把换行符给他替换下呢, \r\n ?
湘伦 发表于 2024-5-10 13:58
是每一行的换行都没了 不是最后的换行
湘伦 发表于 2024-5-10 13:58
之前问过gpt也是这样解答的 试过了没效果
emodiyu 发表于 2024-5-10 14:00
使用 nl2br() 函数将换行符转换为 HTML 的 标签
qq73s5456 发表于 2024-5-10 14:06
把原始网址的 网页源文件数据 和 你爬取处理后的 数据 进行对比 看看 就能找到问题吧 ...
weidongjun 发表于 2024-5-10 14:19
正常来说 是没有区别的,无论是windows 还Linux 返回的信息绝对是一致的。无非是换行符不一样而已 ,如果是 ...
湘伦 发表于 2024-5-10 14:07
一样的代码 在win里面就可以 能不能帮忙看下
QQ截图20240510142935.bmp (1.05 MB, 下载次数: 0)
湘伦 发表于 2024-5-10 14:36
直接解决了
$dom->loadHTML($html, LIBXML_HTML_NOIMPLIED);
这样可以在加载HTML内容时保留原始格式,包括 ...
weidongjun 发表于 2024-5-10 14:45
爬虫有现成的库 composer 安装下就行了,这样多麻烦
欢迎光临 精易论坛 (https://125.confly.eu.org/) | Powered by Discuz! X3.4 |