Python+Selenium爬虫实战一《将QQ今日话题发布到个人博客》
2017-02-08 09:59
561 查看
前提条件:
1、使用Wamp Server部署WordPress个人博客,网上资料较多,这里不过多介绍
思路:
1、首先qq.com首页获取到今日话题的的链接;
2、通过今日话题链接访问到今日话题,并获取今日话题的标题以及话题内容;
3、登录到本地的博客,发表今日话题。
难点:
今日话题的内容就是对应文章‘innerHTML’属性的内容
脚本实现如下:
登录到WordPress,查看文章内容(部分截图):
1、使用Wamp Server部署WordPress个人博客,网上资料较多,这里不过多介绍
思路:
1、首先qq.com首页获取到今日话题的的链接;
2、通过今日话题链接访问到今日话题,并获取今日话题的标题以及话题内容;
3、登录到本地的博客,发表今日话题。
难点:
今日话题的内容就是对应文章‘innerHTML’属性的内容
脚本实现如下:
1 #coding:utf-8 2 from selenium import webdriver 3 import time 4 5 class QQDailyHot(): 6 7 def __init__(self): 8 self.driver = webdriver.Chrome() 9 self.driver.maximize_window() 10 self.title, self.content = self.get_title_and_content_from_daily_hot() 11 12 def get_daily_hot_url(self): 13 return self.by_css('#todaytop a').get_attribute('href') 14 15 def get_title_and_content_from_daily_hot(self): 16 self.driver.get('http://www.qq.com/') 17 url = self.get_daily_hot_url() 18 self.driver.get(url) 19 title = self.by_id('sharetitle').text 20 content = self.by_id('articleContent').get_attribute('innerHTML') 21 return title, content 22 23 def quit(self): 24 self.driver.quit() 25 26 def create_post_from_daily_hot(self): 27 self.driver.get('http://localhost/wp-login.php') 28 self.login_as_test() 29 self.driver.get('http://localhost/wp-admin/post-new.php') 30 self.by_id('title').send_keys(self.title) 31 self.set_content(self.content) 32 self.by_id('publish').click() 33 34 def set_content(self, text): 35 text = text.strip() 36 js = 'document.getElementById("content_ifr").contentWindow.document.body.innerHTML=\'%s\'' %(text) 37 print(js) 38 self.driver.execute_script(js) 39 40 def login(self, user_name, password): 41 self.by_id('user_login').send_keys(user_name) 42 self.by_id('user_pass').send_keys(password) 43 self.by_id('wp-submit').click() 44 45 def login_as_test(self): 46 user_name = password = 'test' 47 self.login(user_name, password) 48 49 def by_id(self, the_id): 50 return self.driver.find_element_by_id(the_id) 51 52 def by_css(self, css): 53 return self.driver.find_element_by_css_selector(css) 54 55 def by_name(self, name): 56 return self.driver.find_element_by_name(name) 57 58 if __name__ == '__main__': 59 daily_hot = QQDailyHot() 60 daily_hot.create_post_from_daily_hot() 61 daily_hot.quit()
登录到WordPress,查看文章内容(部分截图):
相关文章推荐
- python3 [爬虫入门实战] 爬虫之selenium 模拟QQ登陆抓取好友说说内容(暂留)
- Python爬虫实战(4):豆瓣小组话题数据采集—动态网页
- [Python爬虫] 之二十七:Selenium +phantomjs 利用 pyquery抓取今日头条视频
- python爬虫实战笔记---selenium爬取QQ空间说说并存至本地(上)
- Python爬虫实战02:分析Ajax请求并抓取今日头条街拍
- Python爬虫实战八之利用Selenium抓取淘宝匿名旺旺
- 用python+selenium将腾讯首页今日话题的内容自动发表到自己cnblog里
- python3 [爬虫实战] selenium + requests 爬取安居客
- python爬虫实战笔记---selenium爬取QQ空间说说并存至本地
- python3[爬虫实战] 使用selenium,xpath爬取京东手机(上)
- python3 [爬虫实战] selenium + requests 爬取安居客
- 用python+selenium将腾讯首页今日话题的内容自动发表到自己cnblog里
- python3 [爬虫实战] 微博爬虫京东客服之Selenium + Chrom浏览器的使用(上)
- python爬虫实战--selenium验证码保存+多线程多标签+自动点击+完整代码
- [Python爬虫] Selenium爬取新浪微博移动端热点话题及评论 (下)
- Python爬虫实战八之利用Selenium抓取淘宝匿名旺旺
- python爬虫入门 实战(四)---爬“榜姐”话题微博及热门评论
- [python爬虫小实战2]根据用户输入关键词爬取今日头条图集,并批量下载图片
- Python爬虫实战入门五:获取JS动态内容—爬取今日头条
- python爬虫selenium+firefox抓取动态网页--表情包爬虫实战