Python爬蟲 爬取全書網小說斗羅大陸

2021-09-01 09:20:11 字數 3266 閱讀 5434

1、匯入模組

2、開啟網頁,獲取原碼

3、獲取章節原碼

4、獲取正文

5、過濾『雜質』

廢話不多說開始爬!!!

今天爬的**是  全書網—斗羅大陸

import urllib.request    #開啟和瀏覽url中內容 

import re #匹配我們需要的內容

import urllib.request

import re

def run():

html = urllib.request.urlopen("").read() #開啟**鏈結,並儲存下來

html = html.decode('gbk') #將 位元組 --->>> str

print(html)

run()

執行結果就是獲取到了網頁的源**,由於太長了,挑重點的往上覆制 ,可以看出網頁源**存在我們想要的資訊,每篇文章的網頁鏈結,我們想要獲取到,就需要用到re正規表示式了。

(-----------------------此處省略了一堆--------------------------)

引子 穿越的

第一章 ,異界唐三 一

第一章 ,異界唐三 二

第一章 ,異界唐三 三

第一章 ,異界唐三 四

第二章 廢武魂與先天滿魂力 一

第二章 廢武魂與先天滿魂力 二

(-----------------------此處省略了一堆--------------------------)

import urllib.request

import re

def run():

html = urllib.request.urlopen("").read() #開啟**鏈結,並儲存下來

html = html.decode('gbk') #將 位元組 --->>> str

get_url =re.compile(r'(.*?)

') #設定匹配的條件

get_html_url =re.findall(get_url,html) #開始匹配

print(get_html_url) #輸出一下看看

run()

執行結果就是我們獲得了乙個列表,列表裡有包含章節url和文章標題的元組,然後我們就可以通過遍歷獲取每個章節的url然後再進行和第一步一樣的事情,獲取章節所在頁面的原碼。

d:\alien_invasion\venv\scripts\python.exe d:/alien_invasion/venv/斗羅大陸_爬蟲/get_斗羅大陸.py

[('/7392650.html', '引子 穿越的'), ('/7392651.html', '第一章 ,異界唐三 一'), ('/7392652.html', '第一章 ,異界唐三 二'), ('/7392653.html', '第一章 ,異界唐三 三'),

(-----------------------此處省略了一堆--------------------------)

('/7393365.html', '第二百三十五章 完美融合之雙神戰雙神'), ('/7393366.html', '第二百三十六章 大結局,最後乙個條件')]

通過遍歷列表,利用索引  url[0]  方式,獲取網頁鏈結

import urllib.request

import re

def run():

html = urllib.request.urlopen("").read() #開啟**鏈結,並儲存下來

html = html.decode('gbk') #將 位元組 --->>> str

get_url =re.compile(r'(.*?)

') #設定匹配規則

get_html_urls =re.findall(get_url,html) #匹配

for url in get_html_urls: #遍歷每個url

content_h = urllib.request.urlopen(url[0]).read() #根據每個url獲取頁面原碼

content_html = content_h.decode('gbk')

print(content_html)

run()

結果沒問題,不信你自己搞下

利用re正則獲取正文

import urllib.request

import re

def run():

html = urllib.request.urlopen("").read() #開啟**鏈結,並儲存下來

html = html.decode('gbk') #將 位元組 --->>> str

get_url =re.compile(r'(.*?)

') #設定匹配規則

get_html_urls =re.findall(get_url,html) #匹配

for url in get_html_urls: #遍歷每個url

content_h = urllib.request.urlopen(url[0]).read() #根據每個url獲取頁面原碼

content_html = content_h.decode('gbk')

reg = re.compile(r'    (.*?)(.*?)(.*?)',re.s) #設定匹配規則

content = re.findall(reg,content_html) #匹配

content = content[0].replace('    ',' ').replace('

',' ') #將雜質替換成空格

with open(url[1]+'.txt','w')as a: #寫檔案,並以章節名稱命名

乙個簡單的爬蟲就ko了!開心吧!

Python爬蟲例項,爬取小說

import pprint import requests from bs4 import beautifulsoup 獲取原始碼 defget source url r requests.get url if r.status code 200 print r.status code 錯誤 rai...

python爬取奇趣網小說

在爬蟲爬取的過程中,需要判斷傳入的鏈結對應的是靜態網頁還是動態網頁,然後選擇不同的 對其進行爬取 因為靜態爬取比較快,所以當網頁為靜態網頁時就不需要呼叫動態爬取的 了,from bs4 import beautifulsoup,unicodedammit from urllib.request im...

爬蟲之小說爬取

以筆趣閣 為例,爬取一念永恆這本 具體 如下 1 from bs4 import beautifulsoup 2from urllib import request 3import requests 4importre5 import sys6 def down this chapter chapt...