zoukankan      html  css  js  c++  java
  • python2+selenium爬取笔趣读小说

    #! /usr/bin/env python
    #coding=utf-8
    
    from selenium import webdriver
    import time
    from bs4 import BeautifulSoup
    
    import sys
    reload(sys)
    sys.setdefaultencoding("utf-8")
    
    browser = webdriver.Firefox()
    
    #获取文章标题和内容,并写入文档
    def get_article():
        title = browser.find_element_by_xpath('//div[@class="bookname"]/h1').text
        print title
    
        content = browser.find_element_by_id('content').text
        #print content
    
        with open ('storytudou.txt', 'a') as f:
            f.write(title + '
    ')
            f.write(content + '
    
    ')
    
    #获取该本小说共有多少章
    def page_num():
        browser.get("https://www.biqudu.net/31_31729/")
        html = browser.page_source
        soup = BeautifulSoup(html, 'lxml')
        dd = soup.find_all('dd')
        #print dd    
        page = len(dd)
        return page
    
    #点击下一章
    def index_page(i):
        if i == 1:
            browser.get("https://www.biqudu.net/31_31729/2212637.html")
            time.sleep(10)
        get_article()
        js = "window.scrollTo(0,document.body.scrollHeight)"
        browser.execute_script(js)
        time.sleep(5)    
        next_p = browser.find_element_by_xpath('//div[@class="bottem2"]/a[3]')
        #next_p = browser.find_element_by_xpath('/html/body/div/div[5]/div[2]/div[5]/a[3]')
        time.sleep(5)
        next_p.click()
        time.sleep(10)
    
     #遍历小说全部章节       
    def main():
        page = page_num()
        print(page)
        for i in range(1, page+1):
            index_page(i)
            
    if __name__ == '__main__':
        
        main()
            

    系统:ubuntu

    需要的安装BeautifulSoup

    yanner@yanner-VirtualBox:~$ sudo apt-get install python-bs4

    说明:

    Beautiful Soup将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象;

    soup.find_all('dd')  获取所有的P标签,返回一个列表,类型为'bs4.element.Tag'。

  • 相关阅读:
    PHP远程下载图片,微信头像存到本地,本地图片转base64
    jQuery Validate自定义错误信息,自定义方法
    创建自己的composer包
    js,JQ获取短信验证码倒计时
    JQ JS复制到剪贴板
    js,JQuery 生成二维码
    js,JQuery实现,带筛选,搜索的select
    HTML5拖放牛刀小试
    HTML5上传图片预览功能
    一次dropzone体验
  • 原文地址:https://www.cnblogs.com/yanner/p/11382946.html
Copyright © 2011-2022 走看看