运行新页面时,必须使用以下setViewport
函数指定视口的大小:
await page.setViewport({
width: 1920,
height: 1080
})
Run Code Online (Sandbox Code Playgroud)
我想使用最大视口。
如何根据窗口大小调整视口的大小?
javascript viewport node.js google-chrome-devtools puppeteer
我是webpack的新手,但我开始在我的一个项目中使用它来了解它.
我想在引导程序中使用jQuery,但是,当我启动应用程序时,我收到以下错误:
bootstrap.min.js?5802:6未捕获错误:Bootstrap的JavaScript需要jQuery
在我的webpack配置中,我定义了两个入口点,一个用于项目库,一个用于外部源,称为供应商,如jQuery,Bootstrap等.
在供应商中,我已经在jQuery库之后定义了Bootstrap库,但我无法摆脱错误.我缺少的任何线索?
这是我的webapp配置:
import webpack from 'webpack';
import HtmlWebpackPlugin from 'html-webpack-plugin';
import autoprefixer from 'autoprefixer';
let node_dir = __dirname + '/node_modules';
export default {
resolve: {
extensions: ['', '.js', '.jsx'],
alias: {
'jquery': node_dir + '/jquery/dist/jquery.js',
'jquery-validation': node_dir + '/jquery-validation/dist/jquery.validate.js',
'bootstrap': node_dir + '/bootstrap/dist/js/bootstrap.min.js'
}
},
debug: true,
devtool: 'cheap-module-eval-source-map', // more info:https://webpack.github.io/docs/build-performance.html#sourcemaps and https://webpack.github.io/docs/configuration.html#devtool
noInfo: true, // set to false to see a list of every file being bundled.
entry: {
// must be first entry …
Run Code Online (Sandbox Code Playgroud) 我越来越厌倦试图让节点库一起正常工作,但这是工作的一部分,所以这里就是这样.
我有一个用于浏览器的ES6应用程序.我的文件有一组单元测试,当我的应用程序是用ES5编写时,我正在调试.我使用Browserify处理导入/导出模块并捆绑我的发行版.这在浏览器中运行应用程序时工作正常.我可以成功浏览源文件和规范文件并运行测试,测试通过.我非常接近这个工作.
唯一的问题是报道.我最接近的是显示karma-browserify生成的文件的覆盖范围,每个文件看起来像这样:
require('/absolute/path/to/the/corresponding/file.js');
Run Code Online (Sandbox Code Playgroud)
并且所有文件的覆盖率显然为100%,因为每个文件只有一行.
这是我的karma.conf.js:
import babelify from 'babelify';
import isparta from 'isparta';
import paths from './paths';
var normalizeBrowserName = (browser) => browser.toLowerCase().split(/[ /-]/)[0];
export default function(config) {
config.set({
basePath: '..',
browsers: ['PhantomJS'],
frameworks: ['browserify', 'jasmine'],
files: paths.test.files,
preprocessors: {
'app/**/*.js': ['browserify', 'sourcemap', 'coverage'],
[paths.test.testFiles]: ['babel'],
},
plugins: [
'karma-babel-preprocessor',
'karma-browserify',
'karma-coverage',
'karma-jasmine',
'karma-junit-reporter',
'karma-phantomjs-launcher',
'karma-sourcemap-loader',
],
autoWatch: false,
colors: false,
loggers: [{ type: 'console' }],
port: 9876,
reporters: ['progress', 'dots', 'junit', 'coverage'],
junitReporter: {
outputFile: paths.test.resultsOut,
suite: '', …
Run Code Online (Sandbox Code Playgroud) 我是新手机器学习和新手accord.net
(我编码C#).
我想创建一个简单的项目,我在其中查看振荡的简单时间序列数据,然后我希望accord.net学习它并预测下一个值将是什么.
这就是数据(时间序列)应该是这样的:
X - Y.
1 - 1
2 - 2
3 - 3
4 - 2
5 - 1
6 - 2
7 - 3
8 - 2
9 - 1
Run Code Online (Sandbox Code Playgroud)
然后我希望它预测以下内容:
X - Y.
10 - 2
11 - 3
12 - 2
13 - 1
14 - 2
15 - 3
Run Code Online (Sandbox Code Playgroud)
你能帮我解决一些如何解决它的例子吗?
你能告诉我这是否可能吗?
我想使用多个代理并在代理拒绝连接时自动更改代理。
args: [
'--proxy-server=127.0.0.1:9876', // Or whatever the address is
]
Run Code Online (Sandbox Code Playgroud)
因此,有了这个,您可以使用一个代理,但是如何使用多个代理并让它在拒绝连接时自动更改?
我在尝试使用 Puppeteer 在输入字段中输入文本时遇到了一些麻烦。这是我正在使用的网站的 HTML,它显示id
该字段是creditCardNumber
:
当我尝试使用page.focus
and 时page.type
,它说没有用于选择器的节点。这段代码是错误的,还是我可以做一些更好的事情?
await page.waitFor(1500);
await page.focus('#creditCardNumber');
await page.focus('#creditCardNumber', '1234', {delay: 5});
Run Code Online (Sandbox Code Playgroud)
这是我得到的错误:
UnhandledPromiseRejectionWarning:错误:未找到选择器的节点:#creditCardNumber
在 Puppeteer 中,我们可以通过提供值作为参数来选择下拉选项:
page.select('select#idOfSelect', 'optionValue');
Run Code Online (Sandbox Code Playgroud)
是否有基于文本而不是值来选择选项的功能?
javascript node.js google-chrome-devtools google-chrome-headless puppeteer
我使用ws端点(puppeteer.connect({ browserWSEndpoint: '' })
)连接到浏览器.
当我启动我最终连接的浏览器时,有没有办法以隐身方式启动它?
我知道我可以这样做:
const incognito = await this.browser.createIncognitoBrowserContext();
Run Code Online (Sandbox Code Playgroud)
但似乎隐身会话与最初打开的浏览器相关联.我只是希望它本身.
我也看到你可以这样做:
const baseOptions: LaunchOptions = { args: ['--incognito']};
Run Code Online (Sandbox Code Playgroud)
但我不确定这是不是最好的方式.
任何意见,将不胜感激.谢谢!
javascript node.js incognito-mode google-chrome-headless puppeteer
我试图生成HTML覆盖率报告,但它不包含我期望的输出.也许我在这里错了,但它应该只显示从spec文件中调用的那些行和方法,对吧?
不知怎的,它没有.
更新:
我创建了一个存储库来提供一个工作示例,概述了问题:
https://github.com/gearsdigital/stunning-octo-train
这是我的(测试)项目设置.如果需要,我可以将它推送到GitHub仓库,因为我不知道如何设置JSFiddle来运行此代码.
有一个生成HTML覆盖率报告的过程.此报告显示所涵盖的代码,由于没有可用的测试,因此显然没有涵盖.
var webpack = require('webpack');
var path = require('path');
// Reference webpack.config.js, don't repeat it!
var webpackConfig = require('./webpack.config.js');
// The entry point from the referenced Webpack configuration has to be
// removed or tests will fail in weird and inscrutable ways.
// Easy enough, just define an empty entry object (null won't work).
webpackConfig.entry = {};
webpackConfig.module = {
preLoaders: [
{
test: /\.js$/,
// files within these directories should …
Run Code Online (Sandbox Code Playgroud) 背景:
使用NodeJS / CucumberJS / Puppeteer构建emberJS解决方案的端到端回归测试。
问题:
当多个动态元素具有相同的选择器时,选择(page.click)并获取元素之一的textContent?(就我而言,我有4个具有相同选择器的元素= [data-test-foo4 =“ true”])
我知道,
const text = await page.evaluate( () => document.querySelector('[data-test-foo4="true"]').textContent );
Run Code Online (Sandbox Code Playgroud)
我可以获取第一个元素的文本,但是如何使用相同的选择器选择其他元素?我试过了:
var text = await page.evaluate( () => document.querySelectorAll('[data-test-foo4="true"]').textContent )[1];
console.log('text = ' + text);
Run Code Online (Sandbox Code Playgroud)
但这给了我'文字=未定义'
另外,以下内容:
await page.click('[data-test-foo4="true"]');
Run Code Online (Sandbox Code Playgroud)
使用该选择器选择第一个元素,但是如何使用该选择器选择下一个?
javascript ×7
node.js ×6
puppeteer ×6
isparta ×3
babeljs ×2
webpack ×2
accord.net ×1
browserify ×1
c# ×1
html ×1
jquery ×1
karma-runner ×1
proxy ×1
viewport ×1