js 抓取网页内容(使用DOM格式有一个问题,如何抓取网页数据的?)

优采云 发布时间: 2021-09-27 18:16

  js 抓取网页内容(使用DOM格式有一个问题,如何抓取网页数据的?)

  昨天,我们使用webdriver抓取了一个电子商务的商品数据信息网站。Webdriver实际上使用DOM格式获取web数据。但是,使用DOM格式有一个问题。研究过前端的学生知道,如果他们使用DOM格式获取数据,他们必须等待DOM树形成,也就是说,DOM格式只有在完全完成后才能使用。但是,对于某些特殊情况,您不需要所有DOM,您可能只需要DOM的一部分。在这种情况下,webdriver会显得有点低效

  今天,我们使用另一种方式获取网页中的内容,HTMLPasser。HTMLPasser使用Sax作为数据流来获取网页中的内容、解析句子和处理句子。在形成DOM树结构后,不再对其进行处理。Sax的全称是“XML的简单API”。事实上,它用于处理XML格式的数据。然而,HTML和XML在格式上有很多相似之处,所以它也可以用来处理HTML语言。当然,HTML和XML之间有很多不同之处。例如,XML要求每个标记必须严格关闭,但HTML没有这样的要求。Html仍然是随意的。它通常看起来与

  对于此类标签,我们可以单独处理

  首先是准备

   pip install HTMLParser

  第二种方法更简单。在目录C:\users\Wilson\appdata\local\programs\Python\Python 36\lib\site packages中找到htmlparser.py文件,然后将其中的所有Markupbase替换为Markupbase,这样就不会再出现上述问题

  嗯,准备工作已经做好了。在加载Python代码之前,我需要创建一个简单的hello.html文件,并使用Python获取该文件中的所有DOM。这是hello.html

  

Hello html

wilson is so good

  一个非常简单的HTML文件主要取决于HTMLPasser如何获取它

  HTMLdemo.close()

  上面的代码实际上继承了基类Htmlparser,重写了几个基本函数,并添加了打印函数以进行调试。*敏*感*词*结果如下

  

  结果是识别并打印DOM树中的所有标记。这样,我们可以根据不同的标签和内容捕获所需的数据

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线