itchat模块(微信)
import itchat #第三方模块 需要网络下载
import time
# 1.给手机助手发送消息
# 登陆(生成登陆二维码)
itchat.auto_login()
while True:
# 给微信的手机助手发信息
itchat.send('hello',toUserName='filehelper')
# 发送文件
itchat.send_file('/etc/passwd',toUserName='filehelper')
time.sleep(1)
运行代码会产生一个二维码,微信扫描登陆后可实现功能
查看通讯录信息
import itchat
itchat.auto_login()
friends = itchat.get_friends()
print(friends)
输出为所有通讯录好友的信息,可根据索引调用所需信息
pymysql模块(mysql数据库)
#先安装数据库服务
安装mysql
yum search mariadb
yum install mariadb mariadb-server -y
#启动mariadb服务
systemctl start mariadb
systemctl enable mariadb
#只允许本地连接,阻断所有来自网络的连接
vim /etc/my.cnf
skip-networking=1
systemctl restart mariadb
#设置mysql的登陆密码
mysql_secure_installation
测试是否可以成功登陆
建立一个新的数据库westos
import pymysql
# 1.连接数据库 host user passwd charset
conn = pymysql.connect(host='localhost',
user='root',
password='123456',
db='westos',
charset='utf8'
)
# 2.创建游标对象
cur = conn.cursor()
# 3.对数据库进行操作
#1.)##################创建数据表########################
try:
create_sqli = "create table hello (id int,name varchar(30));"
print(cur.execute(create_sqli))
except Exception as e:
print('创建数据表失败:',e)
else:
print('创建数据表成功')
redis模块(redis数据库)
#安装redis数据库
获取压缩包 redis-5.0.3.tar.gz
解压 tar zxf redis-5.0.3.tar.gz
yum install gcc -y 一般已经安装过
cd /redis-5.0.3
make install
cd /utils
./install_server.sh
vim /etc/redis/6379.conf #编辑redis配置文件
#bind 127.0.0.1 (69行) 修改为bind 0.0.0.0
systemctl status redis_6379.service
redis数据库操作
import time
import redis
redis.Redis(host='localhost',port=6379)
conn=redis.Redis()
conn.set('name','westos',3) #key,value,失效时间(s)
print(conn.get('name'))
print('等待3s...')
time.sleep(3) #3秒后数据被删除了
print(conn.get('name'))
import time
import redis
conn = redis.Redis(connection_pool=pool)
conn.set('name','linux汉字',4) #4代表的是失效时间 单位为s
# 默认返回bytes类型 如果需要转换 要解码为utf-8编码格式
print(conn.get('name').decode('utf-8'))
print('等待3s....')
time.sleep(3)
print(conn.get('name'))
time.sleep(1)
print(conn.get('name'))
import redis
pool= redis.ConnectionPool(host='localhost',port=6379)
conn = redis.Redis(connection_pool=pool)
conn.set('name','linux',3)
conn.set('age',10,3)
conn.set('score',100,3)
print(conn.get('name'))
# 获取所有的key值
print(conn.keys())
# 所欧key值的总数也是数据条数
print(len(conn.keys()))
# 当前redis数据库中数据条数
print(conn.dbsize())
# 删除指定的key-value值
conn.delete('age')
print('正在删除')
print(conn.get('age'))
print(conn.keys())
import redis
pool= redis.ConnectionPool(host='localhost',port=6379)
conn = redis.Redis(connection_pool=pool)
conn.set('name','linux',3)
conn.set('age',10,3)
conn.set('score',100,3)
print('清除前:',conn.keys())
# 清除redis里面的所有key-value
conn.flushall()
print('清除后:',conn.keys())
import redis
pool= redis.ConnectionPool(host='localhost',port=6379)
conn = redis.Redis(connection_pool=pool)
# 选择集合存储
conn.sadd('python','user1')
conn.sadd('python','user2')
conn.sadd('python','user3')
conn.sadd('movie','user1')
conn.sadd('movie','user6')
conn.sadd('movie','user7')
# 获取某个圈子的成员
print(conn.smembers('python'))
print(conn.smembers('movie'))
# 获取两个圈子共同拥有的成员
print(conn.sinter('python','movie'))
# 获取并集
print(conn.sunion('python','movie'))