鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: wp231957

自增问题

[复制链接]
发表于 2024-5-17 10:19:57 | 显示全部楼层
wp231957 发表于 2024-05-17 10:19
以绝对坐标定位网页文本框
有时候定不准,用click点 ...


如果你不想使用Selenium,并且想使用pyautogui来定位网页文本框,可以尝试以下方法:

1. 使用pyautogui的`locateOnScreen()`函数来找到文本框的位置,该函数可以通过传入一个图片来定位屏幕上的元素。首先,你需要截取网页中文本框的屏幕截图并保存为一个图片文件,然后使用`locateOnScreen()`函数来找到图片所在的位置。这样就可以获取到文本框的坐标,然后使用`pyautogui.click()`函数点击该位置。

示例代码如下:

  1. import pyautogui

  2. # 截取网页文本框的屏幕截图并保存为textbox.png文件
  3. # 请将textbox.png替换为你实际保存的图片文件名
  4. # 这里使用pyautogui的screenshot()函数来截图
  5. textbox_image = pyautogui.screenshot('textbox.png')

  6. # 使用locateOnScreen()函数定位图片位置
  7. # 请将textbox.png替换为你实际保存的图片文件名
  8. textbox_position = pyautogui.locateOnScreen('textbox.png')

  9. # 点击文本框的位置
  10. pyautogui.click(textbox_position)
复制代码


2. 如果你无法获取到文本框的屏幕截图或者图片识别不准确,可以尝试使用pyautogui的`locateAllOnScreen()`函数。该函数可以返回屏幕上所有匹配的图片位置,然后你可以根据这些位置进行点击。

示例代码如下:

  1. import pyautogui

  2. # 截取网页文本框的屏幕截图并保存为textbox.png文件
  3. # 请将textbox.png替换为你实际保存的图片文件名
  4. # 这里使用pyautogui的screenshot()函数来截图
  5. textbox_image = pyautogui.screenshot('textbox.png')

  6. # 使用locateAllOnScreen()函数定位所有图片位置
  7. # 请将textbox.png替换为你实际保存的图片文件名
  8. textbox_positions = pyautogui.locateAllOnScreen('textbox.png')

  9. # 遍历所有位置并点击
  10. for position in textbox_positions:
  11.     pyautogui.click(position)
  12.     break  # 只点击第一个位置
复制代码


通过以上两种方法,你可以使用pyautogui来定位网页文本框,并点击对应的位置。但需要注意,由于使用了绝对坐标定位,可能会受到不同屏幕分辨率和网页布局的影响,可能需要根据具体情况进行适当的调整。希望这能帮助到你,如有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-17 10:21:57 From FishC Mobile | 显示全部楼层
FishC 发表于 2024-5-17 10:19
如果你不想使用Selenium,并且想使用pyautogui来定位网页文本框,可以尝试以下方法:

1. 使用pyauto ...

它是获取图片中心点的坐标吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-17 10:22:13 | 显示全部楼层
wp231957 发表于 2024-05-17 10:21
它是获取图片中心点的坐标吗


是的,`locateOnScreen()`函数返回的是图片在屏幕上匹配区域的矩形位置,而不仅仅是图片的中心点坐标。这个位置可以通过调用`pyautogui.center()`函数来获取图片位置的中心点坐标。

下面是一个示例代码:

import pyautogui

# 截取网页文本框的屏幕截图并保存为textbox.png文件
# 请将textbox.png替换为你实际保存的图片文件名
# 这里使用pyautogui的screenshot()函数来截图
textbox_image = pyautogui.screenshot('textbox.png')

# 使用locateOnScreen()函数定位图片位置
# 请将textbox.png替换为你实际保存的图片文件名
textbox_position = pyautogui.locateOnScreen('textbox.png')

# 获取图片位置的中心点坐标
textbox_center = pyautogui.center(textbox_position)

# 点击文本框的位置
pyautogui.click(textbox_center)

在这个示例代码中,我们使用`pyautogui.locateOnScreen()`函数获取图片在屏幕上的位置,并将该位置保存到`textbox_position`变量中。然后,我们使用`pyautogui.center()`函数获取图片位置的中心点坐标存储到`textbox_center`变量中。最后,我们使用`pyautogui.click()`函数点击文本框的中心点坐标。

希望这个解释能够帮助你理解。如有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-19 16:58:47 | 显示全部楼层
哇,这机器人好厉害啊,问了好多都能答出来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-5-20 08:45:12 | 显示全部楼层
小肥狼haoran 发表于 2024-5-19 16:58
哇,这机器人好厉害啊,问了好多都能答出来

要有选择的去相信它  它很多时候 回答的都不正确
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-5-20 21:21:26 | 显示全部楼层
确实AI嘛,难免出错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-7 17:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表