小编Ngu*_*ula的帖子

在不同的计算机上以不同的分辨率运行 Pyautogui

我有一个 python 脚本,可以在我的工作计算机(1600 x 900 分辨率)上完美运行。我在这台计算机上拍摄了 pyautogui.locateOnScreen 使用的所有屏幕截图。我尝试在我的家用笔记本电脑上以不同的分辨率(1340 x 640)运行此程序,但脚本似乎找不到图像位置。我猜这是因为分辨率不同。(我已将脚本文件夹从工作计算机复制到家庭计算机,因此图像文件的路径完全相同)。我可以在脚本中更改任何内容,以便 pyautogui.locateOnScreen 可以识别任何计算机分辨率上的图像吗?

screen-resolution python-3.4 pyautogui

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

选择下拉选项并提交表单

我已编写代码来从网站获取表格,但我需要通过以下方式访问其他表格:

  1. 从下拉列表中选择时间范围.
  2. 通过单击"过滤器"按钮提交.

该网站是:

http://www.myfxbook.com/forex-market/currencies/nzdchf-historical-data

下拉列表上的Inspect元素显示:

<select id="timeScales" class="selectField" onfocus="borderChange(this); "onblur="borderReturn(this);" style="border: 1px solid rgb(226, 225, 225);">
<option id="timeScale1" value="1">1 Minute</option>
<option id="timeScale5" value="5">5 Minutes</option>
<option id="timeScale15" value="15">15 Minutes</option>
<option id="timeScale30" value="30">30 Minutes</option>
<option id="timeScale60" value="60">1 Hour</option>
<option id="timeScale240" value="240">4 Hours</option>
<option id="timeScale1440" value="1440" selected="">1 Day</option>
<option id="timeScale10080" value="10080">1 Week</option>
<option id="timeScale43200" value="43200">1 Month</option>
Run Code Online (Sandbox Code Playgroud)

从时间范围下拉列表中,我想选择4个小时,然后单击过滤器按钮.

我知道如何使用requests.get方法获取HTML,但我遇到的问题是当我选择下拉值时URL不会改变.

我尝试过使用requests.post,但我显然不知道如何使用它.我正在编写这个程序使用"如何自动使用PYTHON的镗孔"作为教程,作者没有解释如何以编程方式单击下拉菜单和单击按钮.

他确实解释了Selenium的使用,但我必须重复这个过程超过30次,每次打开一个新页面需要太长时间.

如果您能够展示如何使用请求模块(如果可能)实现这一点,我将不胜感激.

python-requests

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