python3删除sina微博
来源:互联网 发布:淘宝闲鱼小二介入草率 编辑:程序博客网 时间:2024/05/24 05:42
微博上水文太多了,偶然得知python可以模拟登录微博并删除相关博文。在上网找到了两篇博文,但是目前还是调试失败。
目前代码有两个问题:无法获取并输入验证码,导致概率性登录失败;无法获取删除选项。
现贴出代码,望熟悉网页的大牛指点迷津。
参考博文:
http://blog.csdn.net/mypc2010/article/details/72934092
http://blog.csdn.net/nnnnnnnnnnnny/article/details/53999457
#!/usr/bin/env python3.4.3#coding:utf-8 #form http://blog.csdn.net/mypc2010/article/details/72934092 at 2017-08-19 from selenium import webdriver import selenium.webdriver.support.ui as ui from selenium.webdriver.common.keys import Keys from selenium.webdriver import ActionChains import time #ffbrowser = webdriver.Chrome()ffbrowser = webdriver.Firefox()wait = ui.WebDriverWait(ffbrowser,3)def LoginWeibo(username,password,url):#验证码输入未完成 #print(username, password) try: ffbrowser.get(url)#读取session中数据 euser=ffbrowser.find_element_by_css_selector("div.input_wrap>input") ''' euser=ffbrowser.find_element_by_id("loginname").send_keys(username) if not euser: print("euser is null") euser=ffbrowser.find_element_by_name("username").send_keys(username) if not euser: print("euser is null") euser=ffbrowser.find_element_by_class_name("W_input").send_keys(username) ''' clr_user=ffbrowser.find_element_by_css_selector("div.input_wrap") clr_user.click()#避免user含有提示信息 #print(ffbrowser) if not euser: print("euser is null") else: euser.send_keys(Keys.ENTER) euser.send_keys(username) epwd=ffbrowser.find_element_by_css_selector("[name='password']") if not epwd: print("epwd is null") else: epwd.send_keys(Keys.ENTER) epwd.send_keys(password) # 为防止报:Firefox 中的不安全密码警示这个错误,因此点击下密码框附件的区域 eunsafe=ffbrowser.find_element_by_css_selector("[class='info_list auto_login clearfix']") eunsafe.click() #点击登录按钮 ''' esubmit=ffbrowser.find_element_by_xpath("//a[@action-type='btn_submit']") esubmit.click() time.sleep(6) eweibo=ffbrowser.find_element_by_css_selector("li>a[bpfilter='page_frame']") eweibo.click() ''' ffbrowser.find_element_by_xpath('//*[@id="pl_login_form"]/div/div[3]/div[6]/a').click() time.sleep(3) except Exception as e: print(e) return False finally: return True pass def DeleteWeibo(): try: time.sleep(6) elists=ffbrowser.find_elements_by_css_selector(".W_ficon.ficon_arrow_down.S_ficon") for e in elists[1:]: e.click() time.sleep(1) ees=ffbrowser.find_elements_by_css_selector(".screen_box>.layer_menu_list>ul>li[2]>a") #Message: Given css selector expression ".screen_box>.layer_menu_list>ul>li[2]>a" is invalid: #SyntaxError: '.screen_box>.layer_menu_list>ul>li[2]>a' is not a valid selector #ees=ffbrowser.find_element_by_xpath(".screen_box>.layer_menu_list>ul>li[2]>a") print(ees[0].text) ees[0].click() time.sleep(1) eenter=ffbrowser.find_element_by_css_selector(".W_btn_a>span") eenter.click() time.sleep(1) ''' try: time.sleep(1) eclose=ffbrowser.find_element_by_css_selector(".W_ficon.ficon_close.S_ficon") eclose.click() time.sleep(2) except: pass ''' except Exception as e: print(e) return False finally: pass return Truedef QuitWeibo(): ffbrowser.quit() def LoginWeibo_Echo(username, password, url): ffbrowser.get(url)#读取session中数据 #sign in the username uid_xpath='//*[@id="loginname"]' try: browser.find_element_by_xpath('//*[@id="loginname"]').send_keys(username) print('user success!') except: print('user error!') time.sleep(1) #sign in the pasword pwd_xpath='//*[@id="pl_login_form"]/div/div[3]/div[2]/div/input' try: browser.find_element_by_xpath(pwd_xpath).send_keys(password) print('pwd success!') except: print('pwd error!') time.sleep(1) #click to login click_xpath='//*[@id="pl_login_form"]/div/div[3]/div[6]/a' try: browser.find_element_by_xpath(click_xpath).click() print('click success!') except: print('click error!') time.sleep(30)if __name__ == '__main__': your_usr=""#微博账户 your_pwd=""#微博密码 your_url="https://weibo.com/login.php" print("开始登录微博,稍等") flag=LoginWeibo(your_usr,your_pwd,your_url) #flag=LoginWeibo_Echo(your_usr, your_pwd, your_url) if flag: print("登录成功") else: print("failed") #QuitWeibo() i=1 while flag: print("开始第"+str(i)+"轮删除") time.sleep(6) flag=DeleteWeibo() i+=1 if not flag: print("err") QuitWeibo()
2017-08-26
附上调试成功视频:http://www.iqiyi.com/w_19rvjl72nl.html
阅读全文
0 0
- python3删除sina微博
- windows下搭建python+selenium环境(批量删除sina微博)
- Sina微博
- 新浪博客(sina blog)批量删除代码
- sina 微博 发不了
- sina微博api
- sina微博js开发日记
- Sina微博OAuth2框架解密
- sina 微博 Oauth1.0接口
- sina 微博 Oauth2.0接口
- Sina微博 SSO登陆过程分析
- Sina微博 SSO登陆过程分析
- Sina微博 SSO登陆过程分析
- PHP CURL 模拟登录 SINA 微博
- java 模拟浏览器登陆sina微博
- 基于Python3,批量替换和删除
- python3 遍历删除特定后缀名文件
- 编译安装python3,删除键不能用
- UCOS移植代码之LAMMY分析--OS_CPU_C.C
- Kotlin系统化学习系列文章(所有文章的链接)
- Maven配置Tomcat服务器
- 深入理解SP、LR和PC
- uCOS在51单片机上的移植心得
- python3删除sina微博
- java中的逻辑运算符和位运算符
- OSTaskStkInit():任务堆栈结构的初始化
- C++二叉树递归遍历
- HDU 1847 Good Luck in CET-4 Everybody!
- UC/OS-II的详细移植笔记 两种处理器的移植比较(S1C33209&&S3C44BOX)
- 计算机时间:1970年1月1日
- 图片匀速淡入淡出效果(纯js)
- 一类排列组合计数问题