搜尋
首頁web前端js教程使用phantomjs進行網頁抓取的實作程式碼_javascript技巧

phantomjs因為是無頭瀏覽器可以跑js,所以同樣可以跑dom節點,用來進行網頁抓取是再好不過了。

例如我們要大量抓取網頁 “歷史上的今天” 的內容。網站

對dom結構的觀察發現,我們只需要取到 .list li a的title值即可。因此我們利用高階選擇器來建構dom片段

var d= ''
var c = document.querySelectorAll('.list li a')
var l = c.length;
for(var i =0;i<l;i++){
d=d+c[i].title+'\n'
}

之後只要讓js程式碼在phantomjs裡跑起來即可~

var page = require('webpage').create();
	page.open('http://www.todayonhistory.com/', function (status) { //打开页面
		if (status !== 'success') {
			console.log('FAIL to load the address');
		} else {
			console.log(page.evaluate(function () {
					var d= ''
					var c = document.querySelectorAll('.list li a')
					var l = c.length;
					for(var i =0;i<l;i++){
					d=d+c[i].title+'\n'
					}
						return d
				}))

		}
		phantom.exit();
	});

最後我們另存為catch.js,在dos裡面執行一下,輸出內容到txt檔案(也可以用phantomjs的檔案api來寫)

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
在Scrapy爬虫中使用Selenium和PhantomJS在Scrapy爬虫中使用Selenium和PhantomJSJun 22, 2023 pm 06:03 PM

在Scrapy爬虫中使用Selenium和PhantomJSScrapy是Python下的一个优秀的网络爬虫框架,已经被广泛应用于各个领域中的数据采集和处理。在爬虫的实现中,有时候需要模拟浏览器操作去获取某些网站呈现的内容,这时候就需要用到Selenium和PhantomJS。Selenium是模拟人类对浏览器的操作,让我们可以自动化地进行Web应用程序测试

如何使用Go语言中的并发函数实现多个网页的并行抓取?如何使用Go语言中的并发函数实现多个网页的并行抓取?Jul 29, 2023 pm 07:13 PM

如何使用Go语言中的并发函数实现多个网页的并行抓取?在现代Web开发中,经常需要从多个网页中抓取数据。一般的做法是逐个发起网络请求并等待响应,这样效率较低。而Go语言提供了强大的并发功能,可以通过并行抓取多个网页来提高效率。本文将介绍如何使用Go语言的并发函数实现多个网页的并行抓取,以及一些注意事项。首先,我们需要使用Go语言内置的go关键字创建并发任务。通

PHP中如何使用PhantomJS进行无界面测试PHP中如何使用PhantomJS进行无界面测试Jun 27, 2023 am 09:27 AM

在现代Web开发的环境下,无界面测试是不可或缺的一个步骤,因为它可以模拟用户操作并且验证UI的正确性。PhantomJS是一个流行的工具,用于在无界面环境下进行自动化测试。本文将介绍如何使用PHP中的PhantomJS进行无界面测试。一、安装PhantomJS首先,需要在机器上安装PhantomJS,可以从官网下载并进行安装。以下是Linux下的安装步骤:下

PHP如何进行网页抓取和数据爬取?PHP如何进行网页抓取和数据爬取?Jun 29, 2023 am 08:42 AM

PHP是一种服务器端脚本语言,广泛应用于网站开发和数据处理等领域。其中,网页抓取和数据爬取是PHP的一个重要应用场景之一。本文将介绍PHP如何进行网页抓取和数据爬取的基本原理和常用方法。一、网页抓取和数据爬取的原理网页抓取和数据爬取指的是通过程序自动访问网页,并从中获取所需的信息。其基本原理是通过HTTP协议获取目标网页的HTML源码,然后通过解析HTML源

在Python中的网页抓取和数据提取技术在Python中的网页抓取和数据提取技术Sep 16, 2023 pm 02:37 PM

Python已成为各种应用程序的首选编程语言,其多功能性延伸到了网络抓取领域。凭借其丰富的库和框架生态系统,Python提供了一个强大的工具包,用于从网站提取数据并释放有价值的见解。无论您是数据爱好者、研究人员还是行业专业人士,Python中的网络抓取都可以成为利用大量在线信息的宝贵技能。在本教程中,我们将深入研究网络抓取领域,并探索Python中可用于从网站提取数据的各种技术和工具。我们将揭示网络抓取的基础知识,了解围绕这种做法的合法性和道德考虑,并深入研究数据提取的实际方面。在本文的下一部分

学习如何使用win10批量下载网页中的图片学习如何使用win10批量下载网页中的图片Jan 03, 2024 pm 02:04 PM

在使用win10下载图片视频的时候,单个的下载对于需要大批量下载图片的用户来说就很不方便了。那么win10怎么才能批量下载网页中图片。现在让小编来告诉你。希望可以帮助到你。win10怎么批量下载网页中图片1、首先要在电脑上安装迅雷,2、打开电脑,打开自带的Edge浏览器。在输入框输入查找的关键词,然后百度一下3、点击,如下图所示,4、在新界面,点击右上角的三个小点的图标,然后选择,IE是电脑本身就带有的,无需安装,5、在跳转到的IE界面,鼠标右键单击日益空白处,选择6、在迅雷下载界面,在顶部点击

Java中怎么用PhantomJs完成html图片输出功能Java中怎么用PhantomJs完成html图片输出功能May 12, 2023 am 08:55 AM

I.背景如何在小程序里面生成一张图,分享到朋友圈呢?目前前端貌似没有太好的解决方法,所以只能猥琐的由后端来支持掉,那么可以怎么玩?生成图片比较简单简单的场景,可以直接用jdk来支持掉,一般来讲也没有太复杂的逻辑之前写过一个图片合成的逻辑,利用awt实现:图片合成通用、复杂的模板简单的可以直接支持,但复杂一点的,让后端来支持,无疑比较恶心,在github上也搜索了一些渲染html的开源库,不知道是姿势不对还是咋的,没有太满意的结果现在对复杂的模板,要怎么支持呢?也就是本篇的指南,利用phantom

如何使用Java中的PhantomJS实现HTML页面截图功能?如何使用Java中的PhantomJS实现HTML页面截图功能?Apr 24, 2023 am 11:37 AM

I.背景如何在小程序里面生成一张图,分享到朋友圈呢?目前前端貌似没有太好的解决方法,所以只能猥琐的由后端来支持掉,那么可以怎么玩?生成图片比较简单简单的场景,可以直接用jdk来支持掉,一般来讲也没有太复杂的逻辑之前写过一个图片合成的逻辑,利用awt实现:图片合成通用、复杂的模板简单的可以直接支持,但复杂一点的,让后端来支持,无疑比较恶心,在github上也搜索了一些渲染html的开源库,不知道是姿势不对还是咋的,没有太满意的结果现在对复杂的模板,要怎么支持呢?也就是本篇的指南,利用phantom

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器