怎麼用python爬sf輕小說文庫的vip章節小說

2021-03-08 10:45:26 字數 3454 閱讀 5949

1樓:天天不看

你需要先購買vip,不然的話是爬不了的,除非系統有漏洞,記住爬蟲不是萬能的

步驟一:研究該**

開啟登入頁面

進入以下頁面 「」。你會看到如下圖所示的頁面(執行登出,以防你已經登入)

仔細研究那些我們需要提取的詳細資訊,以供登入之用

在這一部分,我們會建立一個字典來儲存執行登入的詳細資訊:

1. 右擊 「username or email」 欄位,選擇「檢視元素」。我們將使用 「name」 屬性為 「username」 的輸入框的值。

「username」將會是 key 值,我們的使用者名稱/電子郵箱就是對應的 value 值(在其他的**上這些 key 值可能是 「email」,「 user_name」,「 login」,等等)。

2. 右擊 「password」 欄位,選擇「檢視元素」。在指令碼中我們需要使用 「name」 屬性為 「password」 的輸入框的值。

「password」 將是字典的 key 值,我們輸入的密碼將是對應的 value 值(在其他**key值可能是 「userpassword」,「loginpassword」,「pwd」,等等)。

3. 在源**頁面中,查詢一個名為 「csrfmiddlewaretoken」 的隱藏輸入標籤。「csrfmiddlewaretoken」 將是 key 值,而對應的 value 值將是這個隱藏的輸入值(在其他**上這個 value 值可能是一個名為 「csrftoken」,「 authenticationtoken」 的隱藏輸入值)。

列如:「vy00pe3ra6aiswkbrpn72sfml00icuv8」。

最後我們將會得到一個類似這樣的字典:

payload =

請記住,這是這個**的一個具體案例。雖然這個登入表單很簡單,但其他**可能需要我們檢查瀏覽器的請求日誌,並找到登入步驟中應該使用的相關的 key 值和 value 值。

步驟2:執行登入**

對於這個指令碼,我們只需要匯入如下內容:

import requests

from lxml import html

首先,我們要建立 session 物件。這個物件會允許我們儲存所有的登入會話請求。

session_requests = requests.session()

第二,我們要從該網頁上提取在登入時所使用的 csrf 標記。在這個例子中,我們使用的是 lxml 和 xpath 來提取,我們也可以使用正規表示式或者其他的一些方法來提取這些資料。

login_url = ""

result = session_requests.get(login_url)

tree = html.fromstring(result.text)

authenticity_token = list(set(tree.xpath("//input[@name='csrfmiddlewaretoken']/@value")))[0]

**更多關於xpath 和lxml的資訊可以在這裡找到。

接下來,我們要執行登入階段。在這一階段,我們傳送一個 post 請求給登入的 url。我們使用前面步驟中建立的 payload 作為 data 。

也可以為該請求使用一個標題並在該標題中給這個相同的 url 新增一個參照鍵。

result = session_requests.post(

login_url,

data = payload,

headers = dict(referer=login_url)

)步驟三:爬取內容

現在,我們已經登入成功了,我們將從 bitbucket dashboard 頁面上執行真正的爬取操作。

url = ''

result = session_requests.get(

url,

headers = dict(referer = url)

)為了測試以上內容,我們從 bitbucket dashboard 頁面上爬取了專案列表。我們將再次使用 xpath 來查詢目標元素,清除新行中的文字和空格並列印出結果。如果一切都執行 ok,輸出結果應該是你 bitbucket 賬戶中的 buckets / project 列表。

python12

345tree = html.fromstring(result.content)

bucket_elems = tree.findall(".//span[@class='repo-name']/")

bucket_names = [bucket.text_content.replace("n", "").strip() for bucket in bucket_elems]

print bucket_names

你也可以通過檢查從每個請求返回的狀態**來驗證這些請求結果。它不會總是能讓你知道登入階段是否是成功的,但是可以用來作為一個驗證指標。

例如:python12

result.ok # 會告訴我們最後一次請求是否成功

result.status_code # 會返回給我們最後一次請求的狀態

就是這樣。

2樓:獅子

不需要這麼麻煩,sf的使用者認證主要是通過.sf***munity這個cookie來實現的,可以用瀏覽器登陸後把cookie加到請求頭裡.

看sf的***vip章節只能花錢是吧。。。。。。。。。。。。。。。。 30

3樓:不常用的家

或者借別人的vip帳號

4樓:ryv一

衝了1000多,不夠看啊⊙﹏⊙

5樓:隨便

這倒也不是肯定的,畢竟他們那個**搞了一個叫二十四解禁的東西,還有所謂的簽到解除……不過用這些來看速度很慢就是了!

sf***vip章節只能用錢看嗎?

6樓:匿名使用者

sf可以靠簽到領取火券,每本書還有簽到解除章節……不過用這些來看速度很慢就是了!

7樓:匿名使用者

sf報菠蘿包***裡面用火卷買的章節都是永久的只要你的賬號沒有丟失就行了

請問**可以免費閱讀sf***我是高富帥的vip章節,拜託了. 20

8樓:雙子山神卡

不好意思,這個**沒有盜版,只能看正版。

9樓:**ile情挽頌

《破得春風恨》

內容簡介:

《破得春風恨》講述了:遭遇「鳳凰男」,八年愛情成了泡影。葉孤容原以為這世上最有資格白頭偕老的一對,便是她與聶易梵。

他在她尚是一名情竇初開的蘿莉,還沒有機會將目光投向別處的時候,就已經走進了她的生命。那時她以為人生是可以刪繁就簡,就此塵埃落定的。但世事難料,在他們即將談婚論嫁之際,聶易梵另結新歡。

她幾番思量,委曲求全,但終究意難平,在一次機緣巧合之下利用風流不羈的****顏景辰,利用完畢卻發現難以善後……

菠蘿包輕小說能寫小說嗎,菠蘿包輕小說怎麼成為簽約作者?

要先申請資格 如果沒有電腦可以在手機上面弄 把瀏覽器的識別碼改成電腦 進入官網申請作者資格 然後可以在手機上稽核投稿 可以的呀,sf菠蘿包一直都可以寫 的。無論是電腦 pc端 還是手機 pe端 一樣可以 上面的是病毒不要點!你說的應用沒用過,但是sf是肯定能寫 的。我自己在sf上寫過 別問是什麼 菠...

怎麼用python呼叫matlab

參考以下 import matlab.engine eng matlab.engine.start matlab print eng.isprime 65537 使用matplotlib庫看看 試試matlab打包成可執行程式?matlab中怎麼呼叫python,python計算結果再返回matla...

python用tkinter模組怎麼開啟檔案

tkinter是標準的python gui庫。python與tkinter的結合提供了一個快速和容易的方法來建立gui應用程式,tkinter的提供了一個強大的物件導向的介面tk的gui工具包。python 開啟檔案可以用open命令,例如 電子書txt文字 f open e test.txt en...