首页 > 代码库 > 用python+selenium将腾讯首页今日话题的内容自动发表到自己cnblog里
用python+selenium将腾讯首页今日话题的内容自动发表到自己cnblog里
目的:使用pyhton下的unittest单元测试框架并结合selenium的webdriver来实现将腾讯首页的今日话题下的内容自动发表达到自己的cnblog里。
创建QQDailyTopic类继承unittest的TestCase类,setUp()方法用于测试执行前的初始化工作,而最后的tearDown()与setUp()方法相呼应,用于测试执行之后的善后工作。
python 3.x 和 selenium 2
实现代码如下:
1 #coding=utf-8 2 from selenium import webdriver 3 import unittest 4 from time import sleep 5 6 class QQDailyTopic(unittest.TestCase): 7 8 def setUp(self): 9 self.dr = webdriver.Firefox()10 self.title, self.content = self.get_title_and_content_from_qq_daily_topic()11 12 def get_qq_daily_topic_url(self):13 return self.dr.find_element_by_css_selector(‘#todaytop a‘).get_attribute(‘href‘)14 15 def get_title_and_content_from_qq_daily_topic(self):16 self.dr.get(‘http://www.qq.com/‘)17 url = self.get_qq_daily_topic_url()18 self.dr.get(url)19 title = self.dr.find_element_by_id(‘sharetitle‘).text20 content = self.dr.find_element_by_id(‘articleContent‘).get_attribute(‘innerHTML‘)21 return (title, content)22 23 def login(self, username, password):24 self.dr.find_element_by_id(‘input1‘).send_keys(username)25 self.dr.find_element_by_id(‘input2‘).send_keys(password)26 self.dr.find_element_by_id(‘signin‘).click()27 28 #借助js向添加新随笔的富文本框插入指定内容29 def set_content(self, text):30 text = text.strip()31 js = ‘document.getElementById("Editor_Edit_EditorBody_ifr").contentWindow.document.body.innerHTML=\‘%s\‘‘ %(text)32 print(js)33 self.dr.execute_script(js)34 35 def test_transpond_qq_daily_topic(self):36 self.dr.get(‘https://passport.cnblogs.com/user/signin‘)37 self.login(‘kemi_xxxx‘, ‘kemi_xxxx‘)#自己博客园用户名和密码38 sleep(3)39 40 self.dr.get(‘https://i.cnblogs.com/EditPosts.aspx?opt=1‘)41 self.dr.find_element_by_id(‘Editor_Edit_txbTitle‘).send_keys(self.title)42 self.set_content(self.content)43 self.dr.find_element_by_id(‘Editor_Edit_lkbPost‘).click()44 45 def tearDown(self):46 sleep(5)47 self.dr.quit()48 49 if __name__ == ‘__main__‘:50 unittest.main()
实现效果如下:
用python+selenium将腾讯首页今日话题的内容自动发表到自己cnblog里
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。