摘要:它也會在同一個實例發出的所有請求之間保持,期間使用的功能。而主要是方便解析源碼,從中獲取請求需要的一些參數完整代碼請輸入賬號請輸入密碼項目地址模擬京東登錄吐槽群
Python 爬蟲之模擬登陸CSND 工具
基本的腳本語言是Python,雖然不敢說是最好的語言,至少是最好的之一(0.0),用模擬登陸,我們需要用到多個模塊,如下:
requests
BeautifulSoup
requests 安裝下載源碼安裝
git clone git://github.com/kennethreitz/requests.git cd requests pip install .
pip
pip install requestsBeautifulSoup 介紹
Beautiful Soup 是一個可以從HTML或XML文件中提取數據的Python庫.它能夠通過你喜歡的轉換器實現慣用的文檔導航,查找,修改文檔的方式.Beautiful Soup會幫你節省數小時甚至數天的工作時間.
安裝easy_install beautifulsoup4
pip install beautifulsoup4使用
from bs4 import BeautifulSoup soup = BeautifulSoup(open("index.html")) soup = BeautifulSoup("data", "lxml")說明
requests主要是為了利用requests的高級會話機制,requests的會話對象可以讓我們跨請求保持某些參數,比如cookies, headers等,
會話對象讓你能夠跨請求保持某些參數。它也會在同一個 Session 實例發出的所有請求之間保持 cookie, 期間使用 urllib3 的 connection pooling 功能。所以如果你向同一主機發送多個請求,底層的 TCP 連接將會被重用,從而帶來顯著的性能提升。
而BeautifulSoup主要是方便解析HTML源碼,從中獲取請求需要的一些參數
完整代碼# -*- coding: UTF-8 -*- from bs4 import BeautifulSoup import requests s = requests.Session() class CSDN: def __init__(self, username, password): self.username = username self.password = password self.login_url = "https://passport.csdn.net/account/login" self.headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebK" "it/537.36 (KHTML, like Gecko) Chrome/61.0.3163.1" "00 Safari/537.36 OPR/48.0.2685.52", "Referer": "http://my.csdn.net/my/mycsdn" } def login(self): params = { "from": "http://my.csdn.net/my/mycsdn" } html = s.get(self.login_url, params=params, headers=self.headers) soup = BeautifulSoup(html.content, "lxml") lt = soup.select("input[name="lt"]")[0].get("value") execution = soup.select("input[name="execution"]")[0].get("value") event_id = soup.select("input[name="_eventId"]")[0].get("value") data = { "username": self.username, "password": self.password, "rememberMe": "true", "lt": lt, "execution": execution, "_eventId": event_id } r = s.post(self.login_url, data=data) self.headers["Referer"] = "http://passport.csdn.net/account/login?from=http%3A%2F%2Fmy.csdn.net%2Fmy%2Fmycsdn" resp = s.get("http://my.csdn.net/my/mycsdn", headers=self.headers) print(resp.text) username = input("請輸入賬號:") password = input("請輸入密碼:") cs = CSDN(username, password) cs.login()
項目地址: 模擬京東登錄
吐槽QQ群: 173318043
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/44471.html
摘要:時間永遠都過得那么快,一晃從年注冊,到現在已經過去了年那些被我藏在收藏夾吃灰的文章,已經太多了,是時候把他們整理一下了。那是因為收藏夾太亂,橡皮擦給設置私密了,不收拾不好看呀。 ...
摘要:學習網絡爬蟲主要分個大的版塊抓取,分析,存儲另外,比較常用的爬蟲框架,這里最后也詳細介紹一下。網絡爬蟲要做的,簡單來說,就是實現瀏覽器的功能。 Python學習網絡爬蟲主要分3個大的版塊:抓取,分析,存儲 另外,比較常用的爬蟲框架Scrapy,這里最后也詳細介紹一下。 首先列舉一下本人總結的相關文章,這些覆蓋了入門網絡爬蟲需要的基本概念和技巧:寧哥的小站-網絡爬蟲,當我們在瀏覽器中輸入...
摘要:微信知乎新浪等主流網站的模擬登陸爬取方法摘要微信知乎新浪等主流網站的模擬登陸爬取方法。先說說很難爬的知乎,假如我們想爬取知乎主頁的內容,就必須要先登陸才能爬,不然看不到這個界面。圖片描述知乎需要手機號才能注冊登陸。 微信、知乎、新浪等主流網站的模擬登陸爬取方法摘要:微信、知乎、新浪等主流網站的模擬登陸爬取方法。 網絡上有形形色色的網站,不同類型的網站爬蟲策略不同,難易程度也不一樣。從是...
摘要:方法不僅適用于百度云,別的一些比較難以模擬登陸的網站都可以按照這種方式分析。本文要求讀者具有模擬登陸主要是抓包和閱讀代碼和密碼學的基本知識。和模擬登陸微博的分析流程一樣,我們首先要做的是以正常人的流程完整的登錄一遍百度網盤。 這是第二篇從簡書搬運過來的文章(大家別誤會,是我原創的)。因為前一篇文章,我看反響還挺好的,所以把這篇也搬運過來了,其實目的還是為宣傳自己的分布式微博爬蟲(該項目...
摘要:可能有的老手覺得我寫得很啰嗦,但其實很多新手可能都不知道這些細節,所以我把我在分析新浪微博模擬登陸的過程全寫了出來。 這篇文章于去年4月發布在我的簡書,現在把它放到這里,主要是為了宣傳自己的分布式微博爬蟲。下面是主要內容,希望能幫到有這個需求的朋友 最近由于需要一直在研究微博的爬蟲,第一步便是模擬登陸,從開始摸索到走通模擬登陸這條路其實還是挺艱難的,需要一定的經驗,為了讓朋友們以后少...
閱讀 2112·2023-04-26 00:41
閱讀 1142·2021-09-24 10:34
閱讀 3573·2021-09-23 11:21
閱讀 4031·2021-09-22 15:06
閱讀 1557·2019-08-30 15:55
閱讀 897·2019-08-30 15:54
閱讀 1829·2019-08-30 15:48
閱讀 550·2019-08-29 13:58