小编Den*_*ise的帖子

Python - 像老鼠一样的人类行为

我正在尝试使用pyautogui或模拟类似人类的鼠标运动autopy

有哪位知道或者可以提供一下好的方法吗?

假设我想从 (0, 0) 移动到 (56, 200)。如果我使用pyautogui.moveTo(),它就会跳到那里。如果我使用autopy.mouse.smooth_move(),它可以完成工作,但运动非常假。

我希望它移动到屏幕上的随机节点,但最终到达目的地。

python autopy pyautogui

8
推荐指数
1
解决办法
7791
查看次数

图表自动滚动(示波器效果)

我的问题是,无论何时我向图表添加一个点,它都会压缩所有点.相反,我希望它自动滚动.

这里有两个.gif来解释我的问题

我现在有什么

在此输入图像描述

我想要实现的目标

在此输入图像描述

我现在的代码是

    DateTime dt;

    private void Form1_Load(object sender, EventArgs e)
    {
        timer1.Start();
    }

    private void timer1_Tick(object sender, EventArgs e)
    {
        dt = DateTime.Now;
        if (checkBox1.Checked)
        {
            chart1.Series["Light"].Points.AddXY(dt.ToShortTimeString(), 1);
        }
        else
        {
            chart1.Series["Light"].Points.AddXY(dt.ToShortTimeString(), 0);
        }

    }
Run Code Online (Sandbox Code Playgroud)

c# scroll mschart winforms

7
推荐指数
1
解决办法
856
查看次数

Headless Puppeteer - 避免被 Akamai 检测到

您好,我正在尝试抓取一个由 Akamai 提供支持的网站以进行机器人程序保护。由于 Akamai 阻止我的登录请求,我无法通过登录页面。

首先我想说的是,是的,有很多关于如何避免被 Akamai 等公司检测到的指南,但这些指南现在已经无关紧要,因为 Akamai 这样的公司通过使用 AI 检测新机器人而变得越来越好。

那么让我告诉您我的脚本正在运行的基础知识:

  • 傀儡师(无头模式)
  • puppeteer-extra-plugin-stealth

对于 Chrome 标志:

var chromeFlags = [
    '--no-sandbox',
    '--disable-setuid-sandbox',
    '--disable-accelerated-2d-canvas',
    '--no-zygote',
    '--renderer-process-limit=1',
    '--no-first-run',
    '--ignore-certificate-errors',
    '--ignore-certificate-errors-spki-list',
    '--disable-dev-shm-usage',
    '--disable-infobars',
    '--lang=en-US,en',
    '--window-size=1920x1080',
    '--disable-extensions'
  ];
Run Code Online (Sandbox Code Playgroud)

我还欺骗了时区和视口:

await page.emulateTimezone("Asia/Singapore");
await page.setViewport({width: (width/2)-21, height: height-111});
Run Code Online (Sandbox Code Playgroud)

据我所知,Akamai 非常了解窗口/屏幕尺寸。我已经做了我认为必要的一切来确保无头模式模仿实际的浏览器,但无济于事。

有一个网站可以显示您的浏览器指纹bot.sannysoft.com。我目前正在使用它来比较无头木偶师是否模仿实际的有头浏览器,到目前为止它看起来像是一个合法的浏览器。这是我用无头木偶师从该网站获得的结果在此输入图像描述

我希望有人能够告诉我是否应该尝试进行欺骗,以增加不被 Akamai 检测到的机会,或者指出我哪里做错了。

感谢大家!

akamai headless puppeteer

6
推荐指数
1
解决办法
4325
查看次数

禁用 Chrome“恢复页面?Chrome 未正确关闭”和其他浏览器消息

这是我指的弹出窗口:

在此输入图像描述

有没有办法阻止 chrome 显示这些弹出窗口?我尝试过使用--user-data-dir.

以下是我使用的所有标志:

const chromeSwitches = [
      `--user-data-dir=${tasksDataDirPath+'\\'+taskName}`,
      `--remote-debugging-port=${availablePort}`,
      "--arc-disable-locale-sync",
      "--disable-features=IsolateOrigins,site-per-process",
      "--disable-component-extensions-with-background-pages",
      "--disable-background-timer-throttling",
      "--disable-backgrounding-occluded-windows",
      "--disable-renderer-backgrounding",
      "--no-first-run",
      "--password-store=basic",
      "--use-mock-keychain",
      "--disable-extensions",
      "--disable-default-apps",
      "--disable-features=Translate",
      "--disable-background-networking",
      "--disable-sync",
      "--metrics-recording-only",
      "--mute-audio",
      "--no-default-browser-check",
      "--enable-remote-debugging"
    ];
Run Code Online (Sandbox Code Playgroud)

puppeteer

5
推荐指数
2
解决办法
5942
查看次数

C# - SerialPort.ReadLine() 冻结我的程序

我正在尝试使用波特率 9600 通过串行端口读取从我的 Arduino 发送的消息。

我的 Arduino 代码被编程为每当我按下按钮时发送“1”,当我松开手指时发送“0”。

所以它不是不断地发送数据。

我的 C# 程序是读取该消息并将其添加到 ListBox。但是每当我启动它时,程序就会挂起。

private void button1_Click(object sender, EventArgs e)
{
    SerialPort port = new SerialPort();
    port.BaudRate = 9600;
    port.PortName = "COM4";
    port.ReadTimeout = 1000;
    port.Open();


    timer1.Start();
}

private void timer1_Tick(object sender, EventArgs e)
{
    try
    {
        ee = port.ReadLine();
        listBox1.Items.Add(ee);
    }
    catch (Exception)
    {
        timer1.Stop();
    }
}
Run Code Online (Sandbox Code Playgroud)

我想,也许原因是我的程序应该在接收之前检查是否有可用的数据接收?

c# serial-port arduino readline

4
推荐指数
1
解决办法
3614
查看次数

PyArmor - 打包成一个可执行文件

嗨,当我执行此命令时使用 PyArmor:

pyarmor pack main.py

它将它打包到一个名为的文件夹中dist,里面包含我的 .exe 以及许多 Python 扩展文件。

我知道 PyArmor 使用 PyInstaller 来打包它的文件。PyInstaller 有一个名为--onefile.

如何将我的混淆脚本打包到一个 .exe 文件中?

也许像...... pyarmor pack --onefile main.py

python pyarmor

2
推荐指数
1
解决办法
2966
查看次数

子串多行文本

我有一个包含以下单词的文本文件:

姓名:鲍勃

年龄:3岁

我的c#代码是:

string text = File.ReadAllText("path to a.txt");
Run Code Online (Sandbox Code Playgroud)

我如何串,这样我能得到的价值3Bob

c# substring

1
推荐指数
1
解决办法
350
查看次数