亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python爬取三國演義的實現(xiàn)方法

 更新時間:2016年09月12日 11:19:04   作者:bluescorpio  
這篇文章通過實例給大家演示了利用python如何爬取三國演義,對于學習python的朋友們來說是個不錯的實例,有需要的朋友可以參考借鑒,下面來一起看看吧。

本文的爬蟲教程分為四部:

     1.從哪爬 where

     2.爬什么 what

     3.怎么爬 how

     4.爬了之后信息如何保存 save

一、從哪爬

三國演義

二、爬什么

三國演義全文

三、怎么爬

在Chrome頁面打開F12,就可以發(fā)現(xiàn)文章內(nèi)容在節(jié)點

<div id="con" class="bookyuanjiao">

只要找到這個節(jié)點,然后把內(nèi)容寫入到一個html文件即可。

content = soup.find("div", {"class": "bookyuanjiao", "id": "con"})

四、爬了之后如何保存

主要就是拿到內(nèi)容,拼接到一個html文件,然后保存下來就可以了。

#!usr/bin/env 
# -*-coding:utf-8 -*-
import urllib2
import os
from bs4 import BeautifulSoup as BS
import locale
import sys
from lxml import etree
import re

reload(sys)
sys.setdefaultencoding('gbk')

sub_folder = os.path.join(os.getcwd(), "sanguoyanyi")
if not os.path.exists(sub_folder):
  os.mkdir(sub_folder)

path = sub_folder

# customize html as head of the articles
input = open(r'0.html', 'r')
head = input.read()

domain = 'http://www.shicimingju.com/book/sanguoyanyi.html'
t = domain.find(r'.html')
new_domain = '/'.join(domain.split("/")[:-2])
first_chapter_url = domain[:t] + "/" + str(1) + '.html'
print first_chapter_url

# Get url if chapter lists
req = urllib2.Request(url=domain)
resp = urllib2.urlopen(req)
html = resp.read()
soup = BS(html, 'lxml')
chapter_list = soup.find("div", {"class": "bookyuanjiao", "id": "mulu"})
sel = etree.HTML(str(chapter_list))
result = sel.xpath('//li/a/@href')

for each_link in result:
  each_chapter_link = new_domain + "/" + each_link
  print each_chapter_link
  req = urllib2.Request(url=each_chapter_link)
  resp = urllib2.urlopen(req)
  html = resp.read()

  soup = BS(html, 'lxml')
  content = soup.find("div", {"class": "bookyuanjiao", "id": "con"})
  title = soup.title.text
  title = title.split(u'_《三國演義》_詩詞名句網(wǎng)')[0]

  html = str(content)
  html = head + html + "</body></html>"

  filename = path + "\\" + title + ".html"
  print filename
  # write file
  output = open(filename, 'w')
  output.write(html)
  output.close()

0.html的內(nèi)容如下

<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body>

總結

以上就是利用Python爬取三國演義的實現(xiàn)方法,希望對大家學習python能有所幫助,如果有疑問大家可以留言交流。

相關文章

  • python人工智能自定義求導tf_diffs詳解

    python人工智能自定義求導tf_diffs詳解

    這篇文章主要為大家介紹了python人工智能自定義求導tf_diffs詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • python函數(shù)的重新定義及練習

    python函數(shù)的重新定義及練習

    這篇文章主要為大家詳細介紹了python的函數(shù),使用python,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Python入門教程(三十四)Python的文件處理

    Python入門教程(三十四)Python的文件處理

    這篇文章主要介紹了Python入門教程(三十四)Python的文件處理,在Python中處理文件的主要是open()函數(shù),接下來我們就來一起看看open()函數(shù)的用法吧,需要的朋友可以參考下
    2023-05-05
  • Python要如何實現(xiàn)列表排序的幾種方法

    Python要如何實現(xiàn)列表排序的幾種方法

    這篇文章主要介紹了Python要如何實現(xiàn)列表排序的幾種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-02-02
  • opencv-python基本圖像處理詳解

    opencv-python基本圖像處理詳解

    這篇文章主要介紹了Python Opencv圖像處理基本操作代碼詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2021-08-08
  • Python中Matplotlib的點、線形狀、顏色以及繪制散點圖

    Python中Matplotlib的點、線形狀、顏色以及繪制散點圖

    與線型圖類似的是,散點圖也是一個個點集構成的,下面這篇文章主要給大家介紹了關于Python中Matplotlib的點、線形狀、顏色以及繪制散點圖的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-04-04
  • python實現(xiàn)控制臺輸出顏色

    python實現(xiàn)控制臺輸出顏色

    這篇文章主要為大家詳細介紹了python實現(xiàn)控制臺輸出顏色,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • python下函數(shù)參數(shù)的傳遞(參數(shù)帶星號的說明)

    python下函數(shù)參數(shù)的傳遞(參數(shù)帶星號的說明)

    python中函數(shù)參數(shù)的傳遞是通過賦值來傳遞的。
    2010-09-09
  • 詳解Python3 定義一個跨越多行的字符串的多種方法

    詳解Python3 定義一個跨越多行的字符串的多種方法

    這篇文章主要介紹了詳解Python3 定義一個跨越多行的字符串的多種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • 如何利用pandas工具輸出每行的索引值、及其對應的行數(shù)據(jù)

    如何利用pandas工具輸出每行的索引值、及其對應的行數(shù)據(jù)

    這篇文章主要介紹了如何利用pandas工具輸出每行的索引值、及其對應的行數(shù)據(jù),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03

最新評論