中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

?如何用scrapy框架來登錄人人網

發布時間:2022-01-14 15:08:14 來源:億速云 閱讀:124 作者:iii 欄目:大數據

本篇內容主要講解“如何用scrapy框架來登錄人人網”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何用scrapy框架來登錄人人網”吧!

寫爬蟲之前必要的分析

?如何用scrapy框架來登錄人人網

      上圖就是我們的人人網了,通常我們想要去登錄一個網站,有兩種思路通過抓包工具來抓取post數據,看看里面有沒有表單,然后提交表單來進行登錄 通過觀察分析網頁html源碼來找到form表單標簽并且找到相關的提交參數。

       經過我的分析,我用F12看了一下抓包數據,是沒有發現post數據的(大家可以自己去看一下),竟然這個行不通,我們就直接查看源代碼!

      從我打箭頭的地方可以看到,我們需要傳送賬戶和密碼信息的網址是http://www.renren.com/PLogin.do ,然后我們需要傳送兩個參數email和password。

      當我們提交這兩個參數過去時,如果登錄成功會返回一個登錄成功界面的源代碼,我們就通過這個源代碼來判斷是否登錄成功!

分析完啦,開始寫代碼

      前面的創建爬蟲項目和文件等操作我就不多提了,不會的朋友可以去看我前面寫的文章。

       我先直接甩代碼給大家了,老規矩,解釋寫在代碼注釋里了!

loginrr.py:

# -*- coding: utf-8 -*-import scrapyfrom scrapy.http import Request,FormRequest
class LoginrrSpider(scrapy.Spider):    name = 'loginrr'    allowed_domains = ['renren.com']    start_urls = ['http://renren.com/']    headers = {        'User-Agent':            'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'    }
   # 這里我們先編寫start_requests方法(會首先執行)    def start_requests(self):        # 首先訪問一遍登錄頁面(在這里我們可以監測有無驗證碼,若有則需要添加驗證碼字段,若無則不需要)        # 然后回調parse方法        # 設置meta參數,將cookiejar設置為1,表示cookjar開啟        return [Request("http://www.renren.com/PLogin.do", meta={"cookiejar": 1}, callback=self.parse)]
   def parse(self, response):        # 需要發送的表單,這次沒有驗證碼        data = {            # 這里輸入你們自己的賬號密碼            'email': 'xxxxxx',            'password': 'xxxxxxxx'        }        print("正在登陸...")        # 通過 FormRequest.from_response方法來進行登錄        return [FormRequest.from_response(response,                                          # 設置cookie信息                                          meta={"cookiejar": response.meta["cookiejar"]},                                          headers=self.headers,                                          formdata=data,                                          # 回調到next方法                                          callback=self.next,                                          )]
   def next(self, response):        # 打印登錄成功后的界面源代碼        print(response.body)

   大家需要注意,在運行之間需要設置setting.py文件,將ROBOTSTXT_OBEY 設置為 False

運行結果:

?如何用scrapy框架來登錄人人網

到此,相信大家對“如何用scrapy框架來登錄人人網”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

溆浦县| 临高县| 南昌县| 阿坝县| 察隅县| 乐陵市| 望奎县| 正宁县| 巩义市| 精河县| 桓台县| 正定县| 理塘县| 高阳县| 冷水江市| 廊坊市| 柘城县| 库车县| 福建省| 高台县| 柏乡县| 兖州市| 兴安县| 峨眉山市| 桓仁| 侯马市| 阿城市| 三河市| 喀喇沁旗| 漠河县| 齐齐哈尔市| 黑山县| 土默特左旗| 诏安县| 丰宁| 孟州市| 如皋市| 镇宁| 德格县| 宝山区| 洛浦县|