通过进行测试,我面临着 JavaScript 指纹识别,例如:
我想用模拟结果替换指纹识别的结果。
指纹如何工作以及如何模拟/伪造指纹结果?
python fingerprinting node.js audio-fingerprinting puppeteer
I'm writing a script, which sometimes leaks tensors. This can happen in multiple cases, for example when I'm training a neural network, but the training crashes. In this case, the training is interrupted and will not correctly dispose the tensors. This results in a memory leak, which I'm trying to clean up by disposing unused tensors.
Example
In the snippet below, I'm training two (very simple) models. The first run will work and will result in no leaked tensors (number …
javascript memory-leaks machine-learning node.js tensorflow.js
我想直接获取屏幕截图中显示的最后一个 HTTP 请求的响应。
当前的 puppeteer 代码如下所示。有人可以告诉我如何修改它,以便它可以直接从浏览器获得 JSON 响应吗?谢谢。
const puppeteer = require('puppeteer');
(async () => {
// const browser = await puppeteer.launch();
const browser = await puppeteer.launch({
headless: false
, args: ['--user-agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3312.0 Safari/537.36"']
});
const page = await browser.newPage();
await page.goto('https://www.genecards.org/cgi-bin/carddisp.pl?gene=BSCL2');
await page.goto('https://www.genecards.org/cgi-bin/carddisp.pl?gene=BSCL2');
const linkHandlers = await page.$x("//div[@id='enhancers']//a[@data-track-event='Table See-All']");
if (linkHandlers.length > 0) {
await linkHandlers[0].click();
} else {
throw new Error("Link not found");
}
const html = await …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用puppeteer. 我尝试了下面的代码,但浏览器没有最大化到完整模式。我也没有在 puppeteer 库中找到任何可用的函数来最大化窗口。
(async () => {
const browser = await puppeteer.launch({headless: false , slowMo: 100, rgs: ['--start-fullscreen', '--window-size=1920,1080'], executablePath: 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe' });
const page = await browser.newPage();
await page.setViewport({ width: 1920, height: 1080 });
Run Code Online (Sandbox Code Playgroud)
给定“分割比例”,我试图将数据集随机分为两组。问题是,我事先不知道数据集包含多少个项目。我的库从输入流中一个接一个地接收数据,并且期望将数据返回到两个输出流。理想情况下,应将所得的两个数据集精确地拆分为给定的拆分比率。
插图:
??? stream A
input stream ??? LIBRARY ???
??? stream B
Run Code Online (Sandbox Code Playgroud)
例如,给定分流比30/70,流A有望从输入流中接收30%的元素,而流B剩余的70%。订单必须保留。
理念1:为每个元素“掷骰子”
一个明显的方法是:对于每个元素,算法都会随机决定该元素应该进入流A还是流B。问题是,结果数据集可能与预期的分割率相去甚远。给定的拆分率50/50,所得数据拆分可能会相去甚远(甚至可能100/0是非常小的数据集)。目的是使所得的分光比尽可能接近所需的分光比。
想法2:使用缓存并随机化缓存的数据
另一个想法是在传递元素之前先缓存固定数量的元素。这将导致缓存1000个元素并改组数据(或其对应的索引以保持顺序稳定),将它们拆分并传递结果数据集。这应该工作得很好,但是我不确定对于大型数据集,随机化是否真的是随机的(我想看分布时会出现模式)。
两种算法都不是最优的,所以希望您能对我有所帮助。
背景
这是关于基于层的数据科学工具的,其中每个层都通过流从上一层接收数据。在传递数据之前,希望该层将数据(向量)拆分为训练和测试集。输入数据的范围可以从几个元素到一个永无止境的数据流(因此,这些流)。该代码是用JavaScript开发的,但是这个问题更多的是关于算法而不是实际的实现。
在不支持下载图像或在新选项卡中打开它们的页面上,我可以使用 Chrome 开发人员(工具->网络)右键单击图像并执行“将图像复制为 URI”。
是否可以对 puppeteer 做同样的事情?
我尝试使用一些旨在将图像转换为其 base64 表示的 Node.js 模块,但它们似乎都下载图像然后返回 base64 表示。
我是木偶戏的新手。我曾经有 PhantomJS 和 CasperJS,但是在设置更新的服务器(freebsd 12)时发现对 PhantomJS 的支持已经消失,CasperJS 给了我分段错误。
我能够很好地将我的应用程序移植到 puppeteer,但遇到了一个问题,当我想从表中捕获数据时,这些数据似乎不完整或被截断。
我需要一张桌子上的所有信息,但结果总是越来越少。
我试过较小的表,但它也被截断了。不知道console.log缓冲区是否可以扩展,或者是否有更好的方法来获取表中所有tds的值。
const data = await page.$$eval('table.dtaTbl tr td', tds => tds.map((td) => {
return td.innerHTML;
}));
console.log(data);
Run Code Online (Sandbox Code Playgroud)
我应该能够获得所有行,但我得到了这个
[ 'SF xx/xxxx 3-3999 06-01-16',
'Sample text - POLE',
'',
/* tons of other rows (removed by me in this example) <- */
'',
/* end of output */ ... 86 more items ]
Run Code Online (Sandbox Code Playgroud)
我需要其他 86 件物品!!!因为我在执行代码时让 PHP 从标准输出中提取它。
我正在使用带有headless=false选项的puppeteer ,以便让用户在表单中输入一些详细信息,然后以编程方式读取结果。我希望在加载页面时光标/焦点将位于第一个输入字段上,但焦点始终位于地址栏上。有没有办法在页面内移动光标/焦点?
我已经试过了await page.focus(selector)。请找到以下示例:
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({ headless: false});
const page = await browser.newPage();
let selector = ".w3-white.w3-padding.notranslate>form>input[name='firstname']";
await page.goto('https://www.w3schools.com/html/html_forms.asp');
await page.waitForSelector(selector,{waitUntil :"networkidle2"});
await page.focus(selector);
await page.type(selector,"aaa");
//await browser.close();
})();
Run Code Online (Sandbox Code Playgroud)
我希望在页面加载后,用户将能够在输入字段内输入,而不必先“移动”到该字段中(通过鼠标或选项卡)。
我正在使用tf.Tensor和tf.concat()处理大型训练数据,我发现连续使用tf.concat()变得缓慢。从文件加载大数据的最佳方法是什么tf.Tensor?
我认为这是在 Javascript 中按数组处理数据的常用方法。要实现这一点,需要执行一些粗略的步骤。
Array.push()所以我想我可以tf.concat()以与上面类似的方式使用。
tf.concat()这是一些代码来测量Array.push()和tf.concat()
import * as tf from "@tensorflow/tfjs"
let t = tf.tensor1d([1])
let addT = tf.tensor1d([2])
console.time()
for (let idx = 0; idx < 50000; idx++) {
if (idx % 1000 == 0) {
console.timeEnd()
console.time()
console.log(idx) …Run Code Online (Sandbox Code Playgroud) node.js ×9
puppeteer ×7
javascript ×4
algorithm ×1
data-science ×1
memory-leaks ×1
python ×1
random ×1
split ×1
tensorflow ×1
uri ×1