正在删除node.js中已验证的网站
Scraping authenticated website in node.js
我想用node.js抓取我的大学网站(moodle),但我还没有找到一个无头浏览器可以做到这一点
from robobrowser import RoboBrowser
url = "https://cas.upc.edu/login?service=https%3A%2F%2Fatenea.upc.edu%2Fmoodle%2Flogin%2Findex.php%3FauthCAS%3DCAS"
browser = RoboBrowser()
browser.open(url)
form = browser.get_form()
form['username'] = 'myUserName'
form['password'] = 'myPassword'
browser.submit_form(form)
browser.open("http://atenea.upc.edu/moodle/")
print browser.parsed
问题是该网站需要身份验证。你能帮我吗?谢谢
PD:我认为这会很有用https://www.npmjs.com/package/form-scraper但我不能让它工作。
假设你想阅读第三方网站,并"抓取"特定的信息片段,你可以使用像cheerio这样的库在Node中实现这一点。
Cheerio是"专门为服务器设计的核心jQuery的精益实现"。这意味着,给定DOM(或其一部分)的String表示,cheerio可以像jQuery一样遍历它。
Max Ogden的一个示例展示了如何使用request
模块从远程服务器获取HTML,然后将其传递给cheerio
:
var $ = require('cheerio')
var request = require('request')
function gotHTML(err, resp, html) {
if (err) return console.error(err)
var parsedHTML = $.load(html)
// get all img tags and loop over them
var imageURLs = []
parsedHTML('a').map(function(i, link) {
var href = $(link).attr('href')
if (!href.match('.png')) return
imageURLs.push(domain + href)
})
}
var domain = 'http://substack.net/images/'
request(domain, gotHTML)
Selenium支持多种语言、多种平台和多种浏览器。
相关文章:
- 正在删除node.js中已验证的网站
- php的网站验证不起作用
- 我们应该把数据验证放在网站的哪里
- 实现已验证用户更新状态的最佳方式,作为对系统中已更改状态的反应.(ASP.NET MVC网站)
- 为什么正则表达式不能正确验证网站URL
- 如何验证请求是否来自您网站上的脚本
- 用于验证网站 URL 的正则表达式
- 如何制作需要身份验证的网站
- 验证网站的 API
- 如何对网站进行编程以使用证书进行身份验证
- 跨域XMLHttpRequest以验证网站是否存在
- 在需要用户登录身份验证的网站上使用restify
- 验证不是't工作,现在我的网站也坏了
- javascript表单验证在网站上不起作用
- Javascript使用ASP.NET C#中的网站域名验证电子邮件地址
- 移动网站表单验证
- 使用您网站的摘要's用于CSRF的身份验证cookie
- 我如何判断哪个javascript框架正在验证网站上的表单
- 使用正则表达式验证网站url
- JQuery验证网站地址输入