Python 爬取筆趣看小說

來源:互聯網
上載者:User

標籤:port   for   odi   from   utf-8   class   4.0   float   writer   

# -*- coding:utf-8 -*-from bs4 import BeautifulSoupimport requestsimport sysclass DownLoader(object):    def __init__(self):        self.server = ‘http://www.biqukan.com/‘        self.target = ‘http://www.biqukan.com/0_790/‘        self.header = {‘User-Agent‘: ‘Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebK‘                                     ‘it/537.36 (KHTML, like Gecko) Chrome/64.0.3282.119 Safari/537.36‘}        self.name = []        self.urls = []        self.num = 0    def get_downloader_url(self):        req = requests.get(url=self.target, headers=self.header)        html = req.text        div_bf = BeautifulSoup(html, ‘lxml‘)        div = div_bf.find_all(‘div‘, class_=‘listmain‘)        a_bf = BeautifulSoup(str(div[0]), ‘lxml‘)        a = a_bf.find_all(‘a‘)        self.num = len(a[16:])        for i in a[16:]:            self.name.append(i.string)            self.urls.append(self.server+i.get(‘href‘))    def get_content(self, target):        req = requests.get(target, headers=self.header)        html = req.text        con_bf = BeautifulSoup(html, ‘lxml‘)        con = con_bf.find_all(‘div‘, class_=‘showtxt‘)        con = con[0].text.replace(‘\xa0‘*8, ‘\n\n‘)        return con    def writer(self, name, path, text):        write_flag = True        with open(path, ‘a‘, encoding=‘utf-8‘) as f:            f.write(name+‘\n‘)            f.writelines(text)            f.write(‘\n\n‘)if __name__ == ‘__main__‘:    dl = DownLoader()    dl.get_downloader_url()    print(‘《元尊》開始下載:‘)    for i in range(dl.num):        dl.writer(dl.name[i], ‘元尊.txt‘, dl.get_content(dl.urls[i]))        sys.stdout.write("已下載:%.3f" % float(i/dl.num)+‘\r‘)        sys.stdout.flush()    print(‘下載完成‘)

 

Python 爬取筆趣看小說

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.