Python--itchat模块

本文介绍如何使用itchat模块实现微信自动化,包括给手机助手发送信息及文件、统计好友性别比例、利用图灵机器人进行聊天互动,以及通过手机助手执行电脑命令。同时,探讨了os模块在命令执行中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.利用itchat模块给手机助手发信息及文件

import itchat
import time
hotReload = True  ##保留登录登录状态,段时间内不会自动登录
itchat.auto_login()
while True:
    itchat.send('hello',toUserName='filehelper')  ##对手机助手发送消息
    # itchat.send_file('/etc/passwd', toUserName='filehelper')  ##对手机助手发送文件
    time.sleep(3)  ##每3秒发送一次

执行命令,出现二维码,扫码登录,微信文件助手会出现发送来的短信及文件

Getting uuid of QR code.
Downloading QR code.
Please scan the QR code to log in.
Please press confirm on your phone.
Loading the contact, this may take a little while.
Login successfully as 『被活捉的萌懒猫』  ##登录成功

2.统计微信里的男女好友比例

import itchat
import time
hotReload = True
itchat.auto_login()
friends = itchat.get_friends()  ##获取好友列表
print(friends)
info = {}
for friend in friends[1:]:
    if friend['Sex'] == 1:
        info['male'] = info.get('male',0)+1
    elif friend['Sex'] == 2:
        info['female'] = info.get('female',0)+1
    else:
        info['other'] = info.get('other',0)+1
print(info)

结果输出

[<User: {'MemberList': <ContactList: []>, 'UserName': '@c24396ce2572d34fe209cf822080d71b0e5d726bf1806a45398c19d8840aa693', 'City': '', 'DisplayName': '', 'PYQuanPin': '', 'RemarkPYInitial': '',......]
{'male': 118, 'other': 8, 'female': 67}

3.利用图灵机器人进行好友聊天
先创建自己的机器人

import itchat
import requests
def get_tuling_reponse(_info):
    api_url = 'http://www.tuling123.com/openapi/api'  ##指定的api地址
    data = {
        'key':'03782273ff0a4593ae80dd0e786551fb',  ##api端口接入的key
        'info':_info,
        'userid':'girl'  ##对应图灵机器人的姓名
    }
    res = requests.post(api_url,data).json()  ##发送数据到指定的网址,获取网址返回的数据
    print(res['text'])
    return(res['text'])

@itchat.msg_register(itchat.content.TEXT,isFriendChat=True)  ##仅获取好友的文本信息,并且给与恢复
def text_repky(msg):  ##获取好友发送的信息
    content = msg['Content']  ##返回文本信息内容
    returnContent = get_tuling_reponse(content)  ## 将好友的消息发送给机器人去处理,处理的结果就是返回给好友的信息
    return returnContent
itchat.auto_login()
itchat.run()

结果测试:

你真棒
必须棒
哈哈哈
要和我分享好玩儿的吗?
你真漂亮
亲爱的,当天请求次数已用完。

4.利用itchat模块可以使手机助手管理电脑并且执行命令
import os
import itchat
@itchat.msg_register(itchat.content.TEXT,isFriendChat=True)
def text_reply(msg):
if msg[‘ToUserName’]==‘filehelper’:
command = msg[‘Content’] ##获取要执行的命令
if os.system(command)==0: ##电脑执行命令代码时,执行成功会返回0
res = os.popen(command).read()
result = ‘[返回值]-命令执行成功,执行结果为:\n’+res
itchat.send(result,‘filehelper’)
else:
result = ‘[返回值]-命令执行失败,请重测’ %(command)
itchat.send(result,‘filehelper’)
itchat.auto_login()
itchat.run()
结果测试:

/home/kiosk/PycharmProjects/0529  ##微信执行pwd命令
01.py  ##微信执行ls命令
02.py
03.py
04.py
different.html
diff.html
difflib模块.py
groupDiff.html
itchat 模块.py
__pycache__
异常.py
时间模块.py
考题.py
装饰器2.py
装饰器.py
验证码.py
高阶函数.py
高阶函数练习.py

5.os模块的补充

import os
print(os.system('pwd'))
res = os.system('hostnamee')
print(res)

/home/kiosk/PycharmProjects/0529
0
32512
sh: hostnamee: command not found

由此可知,命令执行成功时返回值为0;不成功时,返回值不为0

res = os.popen('hostname').read()  ##用于保存命令执行的结果
print(res)

foundation4.ilt.example.com
<think>好的,用户让我介绍一下Python-office。首先,我需要回想一下关于这个库的知识。Python-office是一个基于Python的自动化办公工具库,对吧?它主要用于简化日常办公中的重复任务,比如处理Excel、Word、PDF,还有网络爬虫、数据分析之类的。 接下来,我得确认这个库的主要功能和特点。记得它的开发者是程序员晚枫,他创建这个库是为了让办公自动化更简单。用户可能想知道它能做什么,怎么安装,还有有没有具体的例子。用户可能对自动化办公感兴趣,可能是办公人员或者刚开始学Python的人,想提高效率。 然后,我需要组织回答的结构,按照用户的要求,分步骤介绍。首先是概述,说明Python-office是什么,谁开发的,目的。然后是主要功能,比如文件处理、PDF操作、网络爬虫等,每个功能举一两个例子。接着是安装方法,用pip install python-office这样的命令。之后是使用示例,比如批量处理Excel,合并PDF,发送邮件这些,展示代码片段,注意用行内公式和独立公式的格式,不过这里可能用不上太多数学公式,但如果有变量或代码内的数学表达式,需要用$...$。比如在提到处理Excel公式时,如果有数学表达式,就要用正确的LaTeX格式。 还要注意用户提到的系统级指令,比如所有行内数学表达式用$...$,独立公式用$$...$$,但可能在这个问题中用得不多,不过要检查是否有需要的地方。比如在代码示例中如果有数学符号,比如路径中的变量,可能需要用行内格式,但通常代码部分可能不需要,但如果有解释的部分涉及到公式,就需要正确应用。 然后,可能需要提到Python-office的优势,比如简单易用、功能全面、社区支持等。用户可能想知道为什么选择这个库而不是其他类似的,比如openpyxl或者PyPDF2。这里可以强调它的封装程度高,适合快速实现功能,不需要太多底层代码。 最后,确保回答用中文,结构清晰,分点说明,帮助用户逐步了解。可能需要检查是否有错误的信息,比如版本兼容性或者最新的功能更新,如果有不确定的地方,可能需要查阅一下官方文档或资源,确保准确性。 总结下来,回答的结构大概是:概述、主要功能、安装方法、使用示例、优势、资源链接。每个部分用清晰的标题,分点列出,代码示例用正确的格式,并确保LaTeX语法正确,如果有的话。同时保持语言简洁,易于理解,适合不同层次的用户。</think>以下是对`python-office`库的清晰介绍,按功能模块逐步说明: ### 一、概述 `python-office`是由中国开发者[程序员晚枫](https://mp.weixin.qq.com/s/CadAaJUTUlXmTxAIjivfMw)创建的Python自动化办公工具库,目标是通过简单代码解决**文件处理、数据收集、格式转换**等重复性办公任务。 ### 二、主要功能 1. **文件处理** - 批量重命名/格式转换:支持`Excel/Word/PDF/TXT`等格式 - 示例:批量将`.xls`转为`.xlsx` - 数学表达式:处理公式时自动识别,例如单元格中写入$f(x)=\sum_{i=0}^{n} \frac{a_i}{x^i}$ 2. **PDF操作** - 合并/分割/加密/添加水印 - 示例:合并多个PDF时保持页面尺寸$A4=(210mm \times 297mm)$ 3. **网络自动化** - 网页数据抓取(需配合`requests`/`BeautifulSoup`) - 邮箱自动收发(集成SMTP协议) 4. **办公场景增强** - 微信群发消息(基于`itchat`) - 验证码识别(OCR接口封装) ### 三、安装方法 ```bash pip install python-office -U ``` ### 四、典型应用示例 #### 1. Excel批量处理 ```python import office office.excel.fake2excel(columns=['姓名', '奖金'], rows=1000) # 生成测试数据 office.excel.merge2excel(dir_path='./input', output_file='合并结果.xlsx') # 合并文件 ``` #### 2. PDF合并 ```python office.pdf.merge2pdf(dir_path='./待合并PDF', output_file='合并结果.pdf') ``` #### 3. 邮件发送 ```python office.email.send( subject='年度报告', content='附件为分析结果,计算公式:$P = \frac{V}{R}$', receiver='contact@example.com', attachment='data.xlsx' ) ``` ### 五、优势特点 1. **开箱即用**:封装复杂操作为单行代码 2. **场景覆盖广**:支持200+办公场景(持续更新) 3. **中文友好**:提供完整中文文档 4. **生态集成**:可与`pandas/openpyxl`等库配合使用 ### 六、学习资源 - 官方文档:[https://www.python-office.com](https://www.python-office.com) - GitHub仓库:`https://github.com/CoderWanFeng/python-office` > 注意:部分高级功能需要配合API密钥使用(如OCR识别),建议从官方渠道获取最新配置信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值