用法一
#页面向下滚动500像素 pyautogui.FAILSAFE = False pyautogui.scroll(-500) time.sleep(2) print("页面已滚动")
用法二
2024年01月25日
用法一
#页面向下滚动500像素 pyautogui.FAILSAFE = False pyautogui.scroll(-500) time.sleep(2) print("页面已滚动")
用法二
2024年01月25日
pyperclip是一个Python库,用于访问系统剪贴板(clipboard)。它提供了一些函数和方法,用于读取和写入剪贴板的内容。下面是一些常用的pyperclip函数的详细解释:
copy(text):将指定的文本内容复制到剪贴板中。参数text是要复制的文本字符串。
2024年01月25日
pyautogui是一个Python库,提供了一些函数和方法,用于自动化控制鼠标和键盘操作。下面是一些常用的pyautogui函数的详细解释:
其用法书写格式:pyautogui.moveTo(x, y, duration=0.0)
2024年01月25日
# -*- coding: UTF-8 -*- import time # 引入pyautogui模块以操作快捷键 import pyautogui import win32com.client # 引入pyperclip模块以操作剪切板 import pyperclip from tkinter import messagebox speaker = win32com.client.Dispatch("sapi.SpVoice") # 打开浏览器 pyautogui.hotkey('win', 'r') time.sleep(1) pyautogui.typewrite('chrome') #pyautogui.typewrite('https://search.jd.com/') pyautogui.press('enter') time.sleep(1) pyautogui.hotkey('alt', ' ', 'x')#窗口最大化 time.sleep(1) pyautogui.hotkey('ctrl', ' ')#输入法切换到英文 time.sleep(5) print("浏览器已打开") # 添加关键词搜索 pyautogui.hotkey('alt', 'd')#全选搜索栏 time.sleep(2) pyautogui.typewrite('jd.com') pyautogui.press('enter') time.sleep(5) print("进入京东网站") #点击京东搜索框进行关键词的搜索 click_position_image = 'sousuo.png' click_position = pyautogui.locateOnScreen(click_position_image, confidence=0.8) if click_position: x, y, width, height = click_position pyautogui.click(x + width / 2, y + height / 2) # 点击截图中指定位置的中心位置 time.sleep(1) # 等待一秒钟,确保焦点在输入框中 text_to_paste = "三七口服液" #pyautogui.typewrite(text_to_paste)#只能数字,汉字出不来,不友好,建议pyperclip库 pyperclip.copy(text_to_paste) # 将文本复制到剪贴板 pyautogui.hotkey('ctrl', 'v') # 模拟按下和释放Ctrl+V pyautogui.press('enter') time.sleep(5) print("关键词搜索完成") #页面向下滚动500像素 pyautogui.FAILSAFE = False pyautogui.scroll(-500) time.sleep(2) print("页面已滚动") # 根据截图定位到特定位置并点击 # 假设您有一个包含点击位置截图的路径,例如 'click_position.png' click_position_image = 'click_position.png' click_position = pyautogui.locateOnScreen(click_position_image, confidence=0.8) if click_position: x, y, width, height = click_position pyautogui.click(x + width / 2, y + height / 2) # 点击截图中指定位置的中心位置 time.sleep(10) print("随机流览图1完成") # 回到上一页 pyautogui.hotkey('ctrl', 'shift', 'tab') time.sleep(5) print("已回到上一页") # 根据截图定位到特定位置并点击 # 假设您有一个包含点击位置截图的路径,例如 'click_position.png' click_position_image = 'click_position1.png' click_position = pyautogui.locateOnScreen(click_position_image, confidence=0.8) if click_position: x, y, width, height = click_position pyautogui.click(x + width / 2, y + height / 2) # 点击截图中指定位置的中心位置 time.sleep(10) print("随机流览图2完成") # 回到上一页 pyautogui.hotkey('ctrl', 'shift', 'tab') time.sleep(5) print("已回到上一页") # 回到上一页 #pyautogui.moveTo(159, 11, 2) #pyautogui.click() #time.sleep(5) # 根据截图定位到特定位置并点击 # 假设您有一个包含点击位置截图的路径,例如 'click_position.png' click_position_image = 'click_position2.png' click_position = pyautogui.locateOnScreen(click_position_image, confidence=0.8) if click_position: x, y, width, height = click_position pyautogui.click(x + width / 2, y + height / 2) # 点击截图中指定位置的中心位置 time.sleep(5) print("随机流览图3完成") #加入购物车 click_position_image = 'gouwuche.png' click_position = pyautogui.locateOnScreen(click_position_image, confidence=0.8) if click_position: x, y, width, height = click_position pyautogui.click(x + width / 2, y + height / 2) # 点击截图中指定位置的中心位置 time.sleep(5) print("加入购物车完成") #去购物车结算 click_position_image = 'qugouwuchejiesuan.png' click_position = pyautogui.locateOnScreen(click_position_image, confidence=0.8) if click_position: x, y, width, height = click_position pyautogui.click(x + width / 2, y + height / 2) # 点击截图中指定位置的中心位置 time.sleep(5) print("去购物车结算完成") #去结算 click_position_image = 'qujiesuan.png' click_position = pyautogui.locateOnScreen(click_position_image, confidence=0.8) if click_position: x, y, width, height = click_position pyautogui.click(x + width / 2, y + height / 2) # 点击截图中指定位置的中心位置 time.sleep(5) print("去结算完成") #提交订单 pyautogui.FAILSAFE = False pyautogui.scroll(-500) time.sleep(2) print("页面已滚动") click_position_image = 'tijiaodingdan.png' click_position = pyautogui.locateOnScreen(click_position_image, confidence=0.8) if click_position: x, y, width, height = click_position pyautogui.click(x + width / 2, y + height / 2) # 点击截图中指定位置的中心位置 time.sleep(5) print("提交订单完成") # 关闭页面 pyautogui.hotkey('ctrl', 'w') time.sleep(2) print("页面已关闭")
2024年01月25日
快速打开微信:`Ctrl+Alt+W`
截图功能(截全屏或选择区域):`Alt+A` 或 `Ctrl+Alt+A`(截长图使用)
发送消息:‘enter’
搜索:‘ctrl+f’
快速输入:‘ctrl+v’
# -*- coding: UTF-8 -*- import sys import time # 引入pyautogui模块以操作快捷键 import pyautogui # 引入pyperclip模块以操作剪切板 import pyperclip def sendWxMessage(target,msg, delay_time=2): """ 实现原理:1、通过打开微信的快捷键ctrl+alt+w,打开微信窗口 2、通过搜索快捷键ctrl+f,打开搜索窗口 3、通过ctrl+v快捷键实现输入功能 4、通过ctrl+enter快捷键实现搜索or发送功能 :param target: 发送目标 :param msg: 需要发送的消息 :param delay_time: 延迟时间 默认2秒 :return:无返回值 """ try: # 清空剪切板并将目标写入到剪切板 pyperclip.copy("") pyperclip.copy(target) # 打开微信窗口 pyautogui.hotkey("ctrl", "alt", "w") time.sleep(delay_time) # 使用快捷键ctrl+f定位到微信搜索栏 pyautogui.hotkey("ctrl", "f") time.sleep(delay_time) # 使用快捷键ctrl+v将目标粘贴到微信搜索栏,微信将自动搜索 pyautogui.hotkey("ctrl", "v") time.sleep(delay_time) # 按回车键打开搜索出的目标 pyautogui.press("enter") time.sleep(delay_time) # 清空剪切板并将未点检信息写入到剪切板 pyperclip.copy("") pyperclip.copy(msg) # 使用快捷键ctrl+v将信息粘贴到微信输入框,按回车发送消息 pyautogui.hotkey("ctrl", "v") time.sleep(delay_time) pyautogui.press("enter") except Exception as ex: print("发送微信消息出现异常: " + str(ex)) sys.exit(0) if __name__ == '__main__': sendWxMessage("文件传输助手","京东购物小程序",2) pyautogui.click() time.sleep(10) pyautogui.press('down') pyautogui.press("enter")
2024年01月10日
import pandas as pd import tkinter as tk from tkinter import filedialog, Button # 添加 Button 到导入列表中 def merge_and_save(): # 打开文件选择对话框,选择Excel文件 file_path = filedialog.askopenfilename(title="选择Excel文件", filetypes=[("Excel文件", "*.xlsx")]) # 读取Excel文件中的所有工作表 all_sheets = pd.read_excel(file_path, sheet_name=None) # 合并所有工作表的数据到一个新表中 merged_data = pd.concat(all_sheets, ignore_index=True) # 将合并后的数据保存到新的Excel文件中 output_file = filedialog.asksaveasfilename(defaultextension=".xlsx", filetypes=[("Excel文件", "*.xlsx")]) merged_data.to_excel(output_file, index=False) print(f"数据已合并并保存到 {output_file}") # 创建GUI窗口 root = tk.Tk() root.title("Excel数据合并工具(文件中多个sheets合并到一起)") # 设置标题 root.configure(background='darkblue') # 设置背景颜色为蓝色 root.geometry("600x300") # 设置窗口大小为6000x300像素 # 添加文字说明 label = tk.Label(root, text="1.选择你文件夹中要合并的文件\n2.跟着会弹出要保存的路径界面\n3.自定义名称并保存到你指定地方\n4.程序会自动处理", bg="darkblue", fg="white", font=("Arial", 16)) label.pack(pady=10) # 垂直方向上添加一些间距 # 在标签的右下角添加作者信息 author_label = tk.Label(root, text="作者:sy", bg="darkblue", fg="white", font=("Arial", 12)) author_label.place(x=350, y=270, anchor="se") # 将作者标签放置在标签的右下角 # 创建文件选择按钮 file_select_button = Button(root, text="选择文件", command=merge_and_save) file_select_button.pack() # 创建关闭按钮 close_button = Button(root, text="关闭", command=root.quit) close_button.pack() root.mainloop() # 启动GUI事件循环
2024年01月10日
import os import pandas as pd import tkinter as tk from tkinter import filedialog from tkinter.ttk import Button, Frame, Label def read_and_merge_excel_files(folder_path): all_dfs = [] for file_name in os.listdir(folder_path): if file_name.endswith(".xlsx"): file_path = os.path.join(folder_path, file_name) try: df = pd.read_excel(file_path, engine='openpyxl') all_dfs.append(df) except Exception as e: print(f"An error occurred with {file_name}: {e}") else: print(f"跳过非Excel文件: {file_name}") if all_dfs: merged_data = pd.concat(all_dfs, ignore_index=True) output_file = os.path.join(folder_path, 'new_' + file_name) merged_data.to_excel(output_file, index=False, engine='openpyxl') print("已完成: 合并所有Excel文件到当前目录下以new_开头的文件") else: print("没有找到任何Excel文件") def select_folder(): folder_path = filedialog.askdirectory(title="选择文件夹") if folder_path: read_and_merge_excel_files(folder_path) else: print("请选择一个文件夹") def create_close_button(frame): close_button = Button(frame, text="关闭", command=root.quit) close_button.pack(side=tk.RIGHT) def create_title_frame(): title_frame = Frame(root, bg="blue", width=200, height=50) Label(title_frame, text="Excel批量处理程序", bg="blue", fg="white").pack(side=tk.LEFT) create_close_button(title_frame) title_frame.pack(pady=10) # 创建主窗口 root = tk.Tk() root.title("Excel 合并文件") root.geometry("400x300") # 设置窗口大小 root.configure(background='darkblue') # 设置背景色 # 添加文字说明 label = tk.Label(root, text="1.选择你放文件的文件夹即可\n2.程序自动处理并自动保存\n\n例子:文件A放在文件夹B\n程序处理之后的新文件\n将自动保存在当前文件中", bg="darkblue", fg="white", font=("Arial", 16)) label.pack(pady=10) # 垂直方向上添加一些间距 # 在标签的右下角添加作者信息 author_label = tk.Label(root, text="作者:sy", bg="darkblue", fg="white", font=("Arial", 12)) author_label.place(x=350, y=270, anchor="se") # 将作者标签放置在标签的右下角 # 添加一个按钮,点击时执行select_folder函数 button = tk.Button(root, text="选择文件夹", command=select_folder) button.pack() # 运行主循环,等待事件处理 root.mainloop()
2024年01月09日
import os import pandas as pd import tkinter as tk from tkinter import filedialog def read_and_sort_excel(): # 指定桌面路径 desktop_path = os.path.join(os.path.expanduser("~"), "Desktop") # 指定Excel文件名 excel_filename = "名单.xlsx" # 构建完整的Excel文件路径 excel_file_path = os.path.join(desktop_path, excel_filename) # 检查文件是否存在 if os.path.exists(excel_file_path): try: # 读取Excel文件 df = pd.read_excel(excel_file_path, engine='openpyxl') # 提取"列名"列并重新排序 column_values = df[['快递单号', '姓名', '联系方式', '收货地址', '数量']].sort_values(by='快递单号') # 保存为新文件(你可以根据需要更改新文件的名称) new_file_path = os.path.join(desktop_path, 'new_' + excel_filename) column_values.to_excel(new_file_path, index=False, engine='openpyxl') print("已完成!") except Exception as e: print(f"An error occurred: {e}") else: print("文件不存在") # 创建主窗口 root = tk.Tk() root.title("Excel Sorter") # 添加一个按钮,点击时执行read_and_sort_excel函数 button = tk.Button(root, text="开始", command=read_and_sort_excel) button.pack() # 运行主循环,等待事件处理 root.mainloop()
2024年01月09日
import os import pandas as pd import tkinter as tk from tkinter import filedialog from tkinter.ttk import Button, Frame, Label def read_and_sort_excel_folder(folder_path): for file_name in os.listdir(folder_path): if file_name.endswith(".xlsx") or file_name.endswith(".xls"): file_path = os.path.join(folder_path, file_name) try: df = pd.read_excel(file_path, engine='openpyxl') df['姓名'] = df['姓名'].astype(str) df['联系方式'] = df['联系方式'].astype(str) df['收货地址'] = df['收货地址'].astype(str) df['快递单号'] = df['快递单号'].astype(str) column_values = df[['姓名', '联系方式', '收货地址', '快递单号']].sort_values(by='姓名') new_file_path = os.path.join(folder_path, 'new_' + file_name) column_values.to_excel(new_file_path, index=False, engine='openpyxl') print(f"已完成: {file_name}") except Exception as e: print(f"An error occurred with {file_name}: {e}") else: print(f"跳过非Excel文件: {file_name}") def select_folder(): folder_path = filedialog.askdirectory(title="选择文件夹") if folder_path: read_and_sort_excel_folder(folder_path) else: print("请选择一个文件夹") def create_close_button(frame): close_button = Button(frame, text="关闭", command=root.quit) close_button.pack(side=tk.RIGHT) def create_title_frame(): title_frame = Frame(root, bg="blue", width=200, height=50) Label(title_frame, text="Excel批量处理程序", bg="blue", fg="white").pack(side=tk.LEFT) create_close_button(title_frame) title_frame.pack(pady=10) # 创建主窗口 root = tk.Tk() root.title("Excel 解析") root.geometry("400x300") # 设置窗口大小 root.configure(background='darkblue') # 设置背景色 # 添加文字说明 label = tk.Label(root, text="1.选择你放文件的文件夹即可\n2.程序自动处理并自动保存\n\n例子:文件A放在文件夹B\n程序处理之后的新文件\n将自动保存在文件夹B中", bg="darkblue", fg="white", font=("Arial", 16)) label.pack(pady=10) # 垂直方向上添加一些间距 # 在标签的右下角添加作者信息 author_label = tk.Label(root, text="作者:sy", bg="darkblue", fg="white", font=("Arial", 12)) author_label.place(x=350, y=270, anchor="se") # 将作者标签放置在标签的右下角 # 添加一个按钮,点击时执行select_folder函数 button = tk.Button(root, text="选择文件夹", command=select_folder) button.pack() # 运行主循环,等待事件处理 root.mainloop()
Powered By sydomain
Copyright Your WebSite.Some Rights Reserved.