首页 > 解决方案 > 如何在 php 中回显包含 js 文件的网站页面?

问题描述

我想抓取一个网站:https ://tse.ir/MarketWatch.html

我知道我必须使用:

file_get_contents("https://examplesite.html")

获取网站的 html 部分,但我怎样才能找到网站的特定部分,例如文本文件中的这个部分:

<td title="دالبر"title="something" class="txtclass="someclass">Tag namad">دالبر<Name</td>

当我打开文本文件时,我从来没有看到这部分,我认为这是因为网站中有 JavaScript 文件。如何获取包含我想要的每个部分的网站的所有信息?

标签: phphtmlfile-get-contentsfile-put-contents

解决方案


ajax 请求通过 javascript 加载的内容。这意味着您无法仅通过抓取页面内容来获取此数据。

有两种方法可以收集您需要的数据:

  1. 使用基于selenium webdriver的解决方案,通过真实浏览器(将执行 JS)加载此页面,并从渲染的 DOM 中收集数据。
  2. 研究网站发送什么样的请求来获取这些数据。您可以在浏览器开发工具中使用网络活动选项卡。这是chrome 的示例。对于其他浏览器是相同或类似的。比您发送相同的请求并响应您的需求。

在您的特定情况下,您可能可以使用以下网址:https : //tseest.ir/json/MarketWatch/data_211111.json 来访问包含您需要的数据的 json 对象。


推荐阅读