QQ空间自动发表说说(注:账号密码写死,无验证)
import time
from selenium import webdriver
#创建driver调用Google驱动
driver=webdriver.Chrome()
#设置一个隐式时间
driver.implicitly_wait(10)
#访问QQ空间的IP地址https://qzone.qq.com/
driver.get(“https://qzone.qq.com/”)
#网页最大化设置
driver.maximize_window()
time.sleep(3)
#通过CSS定位对象定位到网页中的iframe标签
#用switch_to.frame()切入iframe标签里
ifram=driver.find_element_by_css_selector(“div iframe#login_frame”)
driver.switch_to.frame(ifram)
#定位到账号密码登录
driver.find_element_by_id(“switcher_plogin”).click()
#登录qq账号
qq=“输入一个账号”
passwd=“输入密码”
driver.find_element_by_id(“u”).send_keys(qq)
driver.find_element_by_id(“p”).send_keys(passwd)
driver.find_element_by_id(“login_button”).click()
#定位登录后的页面元素
driver.switch_to.default_content()
driver.find_element_by_link_text(“说说”).click()
#定位frame下的元素
ifram2=driver.find_element_by_css_selector("#app_container > iframe")
driver.switch_to.frame(ifram2)
driver.implicitly_wait(10)
try:
time.sleep(0.5)
try:
driver.find_element_by_xpath("//[@id=’$1_substitutor_content’]").click()
# 因为第一个找到的class无法点击,所以我们找到可以点击然后光标进入编辑框的,然后模拟点击
time.sleep(0.5)
driver.find_element_by_xpath("//[@id=’$1_content_content’]").send_keys(“自动发表”)
# “自动发说说测试”) # 这里应该和上面对齐的,可能是CSDN有长度限制吧,大家粘贴的时候注意下
print(‘文字输入成功’)
driver.find_element_by_css_selector(‘a.btn-post.gb_bt.evt_click’).click()
print(‘发送成功!’)
finally:
print(‘OK!’)
finally:
print(‘END’)
time.sleep(3)
driver.quit()