Example #1
0
 def collect(self):
     LoginController.login_by_cookie(self.browser)
     #self.browser.get('http://weibo.com/5579712614/follow')
     #time.sleep(4)
     a = self.browser.find_element_by_xpath("//a[@node-type='mUpload']")
     a.send_keys(open('2.jpg'))
     list = FocusFollowPage.focus_list_all_with_func(self.browser, self.p)
     print('')
Example #2
0
 def collect(self):
     LoginController.login_by_cookie(self.browser)
     #self.browser.get('http://weibo.com/5579712614/follow')
     #time.sleep(4)
     a = self.browser.find_element_by_xpath("//a[@node-type='mUpload']")
     a.send_keys(open('2.jpg'))
     list = FocusFollowPage.focus_list_all_with_func(self.browser, self.p)
     print('')
Example #3
0
 def __send(self, text, url):
     passwd_dict = PasswdUtil.get_passwd_dict()
     browser = LoginController.get_browser()
     try:
         service.send_weibo(text, url, LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD]))
     except Exception as e:
         print e
         browser.quit()
Example #4
0
def search():
    date = DateUtil.time_to_str(DateUtil.substract_day(DateUtil.now(), 1), Const.STYLE_YYMMDD)
    txt = "又到了推荐极具视觉冲击图片的时刻了[微笑][微笑] @当幸福敲不开门 "
    url = "http://freepic.wetu.me/preview/%s%s.jpg"
    browser = LoginController.get_browser()
    passwd_dict = PasswdUtil.get_passwd_dict()
    LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD])
    service.send_weibo_pics(txt, [url % (date, "i"), url % (date, "p")], browser)
Example #5
0
def publish_articles():
    url = 'http://www.jianshu.com'
    html = BeautifulSoup(HttpUtil.request(url))
    articles_soup = [ parse_article_soup(article)  for article in html.find(attrs={"class": "article-list thumbnails"}).findAll('li')]
    sorted_articles = sorted(articles_soup, key=lambda articl_soup:articl_soup[0], reverse=True)
    article_body = service.jian_shu_article_retrive(url + sorted_articles[0][1])
    browser = LoginController.get_browser()
    passwd_dict = PasswdUtil.get_passwd_dict()
    send_text = '《%s》 又到每天推荐文章的时候到了,这些都是精选的枕边读物哦,希望大家喜欢@当幸福敲不开门[害羞][害羞][害羞] ' % article_body[0]
    service.send_weibo(send_text, service.txt_to_pic(article_body[1], browser),  LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD]))
Example #6
0
def search():
    date = DateUtil.time_to_str(DateUtil.substract_day(DateUtil.now(), 1),
                                Const.STYLE_YYMMDD)
    txt = '又到了推荐极具视觉冲击图片的时刻了[微笑][微笑] @当幸福敲不开门 '
    url = 'http://freepic.wetu.me/preview/%s%s.jpg'
    browser = LoginController.get_browser()
    passwd_dict = PasswdUtil.get_passwd_dict()
    LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME],
                                 passwd_dict[Const.WEIBO_PASSWD])
    service.send_weibo_pics(txt, [url % (date, 'i'), url % (date, 'p')],
                            browser)
Example #7
0
 def __send(self, text, url):
     passwd_dict = PasswdUtil.get_passwd_dict()
     browser = LoginController.get_browser()
     try:
         service.send_weibo(
             text, url,
             LoginController.mobile_login(browser,
                                          passwd_dict[Const.WEIBO_USERNAME],
                                          passwd_dict[Const.WEIBO_PASSWD]))
     except Exception as e:
         print e
         browser.quit()
Example #8
0
 def search(self):
     driver = LoginController.get_firfox()
     LoginController.login(driver, self.name, self.passwd)
     driver.get('http://weibo.com/messages?topnav=1&wvr=6')
     list = MsgPage.get_other_fans_list(driver)
     list[0].click()
     list = MsgPage.get_other_fans_list(driver)
     for friend in list:
         friend.click()
         MsgPage.send_fans_msg(driver, u'hello')
         time.sleep(1)
     driver.get('http://weibo.com/duzijian?is_hot=1')
     weibo_list = [ WeiboPageCommon.weibo_parse(weibo)  for weibo in WeiboPageCommon.get_all_weibo(driver)]
     print ''
Example #9
0
def publish_articles():
    url = 'http://www.jianshu.com'
    html = BeautifulSoup(HttpUtil.request(url))
    articles_soup = [
        parse_article_soup(article)
        for article in html.find(attrs={
            "class": "article-list thumbnails"
        }).findAll('li')
    ]
    sorted_articles = sorted(articles_soup,
                             key=lambda articl_soup: articl_soup[0],
                             reverse=True)
    article_body = service.jian_shu_article_retrive(url +
                                                    sorted_articles[0][1])
    browser = LoginController.get_browser()
    passwd_dict = PasswdUtil.get_passwd_dict()
    send_text = '《%s》 又到每天推荐文章的时候到了,这些都是精选的枕边读物哦,希望大家喜欢@当幸福敲不开门[害羞][害羞][害羞] ' % article_body[
        0]
    service.send_weibo(
        send_text, service.txt_to_pic(article_body[1], browser),
        LoginController.mobile_login(browser,
                                     passwd_dict[Const.WEIBO_USERNAME],
                                     passwd_dict[Const.WEIBO_PASSWD]))
Example #10
0
 def publish(self):
     self.browser.set_page_load_timeout(120)
     passwd_dict = PasswdUtil.get_passwd_dict()
     LoginController.mobile_login(self.browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD])
     #LoginController.login_by_cookie(self.browser)
     print('等待4s,滚动屏幕')
     WeiboPageCommon.scroll(self.browser)
     time.sleep(4)
     WeiboPageCommon.scroll(self.browser)
     time.sleep(4)
     WeiboPageCommon.scroll(self.browser)
     time.sleep(4)
     print('等待结束')
     try:
         weibo_list =  WeiboPageCommon.get_all_weibo(self.browser)
     except:
         traceback.print_exc()
         self.browser.get('http://weibo.com/')
         time.sleep(4)
         weibo_list =  WeiboPageCommon.get_all_weibo(self.browser)
     print('需要解析的微博数目:' + str(len(weibo_list)))
     weibos = map(lambda weibo_driver:self.__get_webibo_info(weibo_driver), weibo_list)
     #weibos.extend(map(lambda weibo_driver:self.__get_webibo_info(weibo_driver), WeiboPageCommon.get_all_weibo(self.browser)[len(weibo_list):]))
     weibos = filter(lambda w : w is not None , weibos)
     #打开新的选项卡
     #self.browser.find_element_by_tag_name("body").send_keys(Keys.CONTROL + 't')
     #self.browser.execute_script("window.open('http://weibo.com/','_blank');")
     #wins = self.browser.window_handles
     #self.browser.switch_to_window(wins[1])
     #self.browser.set_window_size(1366, 768)
     map(lambda weibo:self.__get_weiboer_info(weibo), weibos)
     #self.browser.switch_to_window(wins[0])
     sorted_weibos = PublishStrategy.nums_strategy(weibos)
     WeiboPageCommon.forword_by_comment(self.browser, sorted_weibos[0])
     self.browser.close()
     self.browser.quit()
     print ''
Example #11
0
            weibo = WeiboPageCommon.weibo_and_comment_parse(weibo_driver)
            #weibo.author_info = author_info
        except :
            traceback.print_exc()
            return None
        return weibo

    #获取微博用户信息
    def __get_weiboer_info(self, weibo):
        try:
            print('访问:'),
            print(weibo.author_url)
            self.browser.get(weibo.author_url)
            time.sleep(4)
            info = FriendHomePage.get_friend_info(self.browser)
            fans_info = FansInfo()
            fans_info.focus_num = info[0]
            fans_info.fans_num = info[1]
            fans_info.weibo_num = info[2]
            weibo.author_info = fans_info
            pass
        except Exception as e:
            pass


if __name__ == '__main__':
    crawler = WeiboPublishCrawler(LoginController.get_browser())
    try:
        crawler.publish()
    except:
        crawler.browser.quit()
Example #12
0
    soup = BeautifulSoup(html)
    data = {"reserve_check": 1, "text": "", "html": soup.find('body')}
    url = 'http://www.changweibo.com/convert_changweibo_com.php'
    response = HttpUtil.request_post(url, data)
    img_url = json.loads(response)['image_url']
    print(img_url)
    return img_url


#返回简书文章内容和标题
def jian_shu_article_retrive(url):
    html = HttpUtil.request(url)
    content_soup = BeautifulSoup(
        html, fromEncoding="utf-8").find(attrs={"class": "article"})
    title = content_soup.find(attrs={"class": "title"}).text.encode('utf-8')
    content = content_soup.find(attrs={"class": "show-content"})
    return (title, content)


if __name__ == '__main__':
    article = jian_shu_article_retrive('http://www.jianshu.com/p/6b36ae903883')
    browser = LoginController.get_browser()
    passwd_dict = PasswdUtil.get_passwd_dict()
    send_weibo(
        article[0], txt_to_pic(article[1], browser),
        LoginController.mobile_login(browser,
                                     passwd_dict[Const.WEIBO_USERNAME],
                                     passwd_dict[Const.WEIBO_PASSWD]))
    #print txt_to_pic([1], LoginController.get_chrome())
    #print(jian_shu_article_retrive('http://www.jianshu.com/p/f3237b61d54a'))
Example #13
0
#coding:utf-8
import sys
import time

sys.path.append('/home/workspace/webcrawler/weiboCrawler')
from loginController import LoginController
from Pages import FocusFollowPage


class FansInfoCollector:
    def __init__(self, browser):
        self.browser = browser

    def collect(self):
        LoginController.login_by_cookie(self.browser)
        #self.browser.get('http://weibo.com/5579712614/follow')
        #time.sleep(4)
        a = self.browser.find_element_by_xpath("//a[@node-type='mUpload']")
        a.send_keys(open('2.jpg'))
        list = FocusFollowPage.focus_list_all_with_func(self.browser, self.p)
        print('')

    def p(self, fans):
        print fans.name


if __name__ == '__main__':
    crawler = FansInfoCollector(LoginController.get_chrome())
    crawler.collect()
Example #14
0
#coding:utf-8
import sys
import time
sys.path.append('/home/workspace/webcrawler/weiboCrawler')
from loginController import LoginController
from Pages import FocusFollowPage

class FansInfoCollector:

    def __init__(self, browser):
        self.browser = browser

    def collect(self):
        LoginController.login_by_cookie(self.browser)
        #self.browser.get('http://weibo.com/5579712614/follow')
        #time.sleep(4)
        a = self.browser.find_element_by_xpath("//a[@node-type='mUpload']")
        a.send_keys(open('2.jpg'))
        list = FocusFollowPage.focus_list_all_with_func(self.browser, self.p)
        print('')

    def p(self, fans):
        print fans.name


if __name__ == '__main__':
    crawler = FansInfoCollector(LoginController.get_chrome())
    crawler.collect()

Example #15
0
    soup = BeautifulSoup(html)
    data={
        "reserve_check":1,
        "text":"",
        "html":soup.find('body')
    }
    url = 'http://www.changweibo.com/convert_changweibo_com.php'
    response = HttpUtil.request_post(url, data)
    img_url =  json.loads(response)['image_url']
    print(img_url)
    return img_url


#返回简书文章内容和标题
def jian_shu_article_retrive(url):
    html = HttpUtil.request(url)
    content_soup = BeautifulSoup(html, fromEncoding="utf-8").find(attrs={"class": "article"})
    title = content_soup.find(attrs={"class": "title"}).text.encode('utf-8')
    content = content_soup.find(attrs={"class": "show-content"})
    return (title, content)


if __name__ == '__main__':
    article = jian_shu_article_retrive('http://www.jianshu.com/p/6b36ae903883')
    browser = LoginController.get_browser()
    passwd_dict = PasswdUtil.get_passwd_dict()
    send_weibo(article[0], txt_to_pic(article[1], browser),  LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD]))
    #print txt_to_pic([1], LoginController.get_chrome())
    #print(jian_shu_article_retrive('http://www.jianshu.com/p/f3237b61d54a'))