【python实战】利用selenium自动发信息
此文转载乐字节
自制csdn群发助手
效果展示
selenium selenium是爬虫常用的一款自动化测试插件,它不用于传统爬虫基于网络协议,而是相当于人的自动化操作
所以不会被察觉到ip,适当使用也不会对服务器造成压力,但却能大大提高效率。
浏览器驱动 seleium的使用需要浏览器驱动的支持,谷歌浏览器的下载镜像如下,对照浏览器版本下载。
chromedriver.storage.googleapis.com/index.html
获取粉丝列表 1.打开主页,F12
2.将链接在浏览器打开,得到粉丝的json串。
3.简单处理一下json串,拿到nickname。
此处留给大家去练习,乐字节不贴源码。
拿到后建议存在txt文件里。
发送信息 不难发现,发私信的页面im.csdn.net/chat/{nickn…
所以只需->访问私信页面->输入要发送内容->回车
登录可以选择账号密码登录,也可以微信登录,设置一个input()等待登录操作,成功后回车,程序继续执行。
代码 from selenium import webdriver import time import re
from selenium.webdriver.common.keys import Keys sendtext="【白话设计模式】23种设计模式一句话通俗讲解,女朋友都能听懂(导航篇)\n blog.csdn.net/skylibiao/a… \n 以上信息来自CSDN群发服务"
此处需根据文件内粉丝列表的格式自己修改
print("开始解析用户信息") userlist=[] with open("user",'r+') as f: s=str(f.readlines()) news=re.sub(r'[{}""''\n]',"",s) ss=news.split(",") for i in range(1,len(ss),5): key=ss[i].split(":")[0] value=ss[i].split(":")[1] if(key=="fans"): userlist.append(value) print(userlist,len(userlist)) print("用户信息解析完成")
allnameid=[] browser = webdriver.Chrome() print("进入登录页面")
browser.get("me.csdn.net/qq_16146103")
browser.get("passport.csdn.net/login?code=…") btn=browser.find_element_by_link_text("账号密码登录").click() time.sleep(1)
browser.find_element_by_name("all").send_keys("账号")
browser.find_element_by_name("pwd").send_keys("密码")
browser.find_element_by_xpath("//*[@id='app']/div/div/div[1]/div[2]/div[5]/div/div[6]/div/button").click()
time.sleep(1) input("登录成功后回车") for i in range (0,len(userlist)): browser.get("im.csdn.net/chat/{}".fo…])) text=browser.find_element_by_id("messageText") text.send_keys(sendtext) text.send_keys(Keys.ENTER) print("success") 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 !
ps需要自学视频B站讲的最好的零基础Python教程-----Python大神级教程- Python面向对象编程(完整版)关注B站:BV1Cg411G75N