最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Scrapy框架實(shí)現(xiàn)的登錄網(wǎng)站操作示例

 更新時(shí)間:2020年02月06日 09:00:26   作者:hankleo  
這篇文章主要介紹了Scrapy框架實(shí)現(xiàn)的登錄網(wǎng)站操作,結(jié)合實(shí)例形式分析了Scrapy登錄網(wǎng)站cookies方式、post請(qǐng)求方式登錄網(wǎng)站相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了Scrapy框架實(shí)現(xiàn)的登錄網(wǎng)站操作。分享給大家供大家參考,具體如下:

一、使用cookies登錄網(wǎng)站

import scrapy
class LoginSpider(scrapy.Spider):
  name = 'login'
  allowed_domains = ['xxx.com']
  start_urls = ['https://www.xxx.com/xx/']
  cookies = ""
  def start_requests(self):
    for url in self.start_urls:
      yield scrapy.Request(url, cookies=self.cookies, callback=self.parse)
  def parse(self, response):
    with open("01login.html", "wb") as f:
      f.write(response.body)

二、發(fā)送post請(qǐng)求登錄, 要手動(dòng)解析網(wǎng)頁獲取登錄參數(shù)

import scrapy
class LoginSpider(scrapy.Spider):
  name='login_code'
  allowed_domains = ['xxx.com']
  #1. 登錄頁面
  start_urls = ['https://www.xxx.com/login/']
  def parse(self, response):
    #2. 代碼登錄
    login_url='https://www.xxx.com/login'
    formdata={
      "username":"xxx",
      "pwd":"xxx",
      "formhash":response.xpath("http://input[@id='formhash']/@value").extract_first(),
      "backurl":response.xpath("http://input[@id='backurl']/@value").extract_first()
    }
    #3. 發(fā)送登錄請(qǐng)求post
    yield scrapy.FormRequest(login_url, formdata=formdata, callback=self.parse_login)
  def parse_login(self, response):
    #4.訪問目標(biāo)頁面
    member_url="https://www.xxx.com/member"
    yield scrapy.Request(member_url, callback=self.parse_member)
  def parse_member(self, response):
    with open("02login.html",'wb') as f:
      f.write(response.body)

三、發(fā)送post請(qǐng)求登錄, 自動(dòng)解析網(wǎng)頁獲取登錄參數(shù)

import scrapy
class LoginSpider(scrapy.Spider):
  name='login_code2'
  allowed_domains = ['xxx.com']
  #1. 登錄頁面
  start_urls = ['https://www.xxx.com/login/']
  def parse(self, response):
    #2. 代碼登錄
    login_url='https://www.xxx.com/login'
    formdata={
      "username":"xxx",
      "pwd":"xxx"
    }
    #3. 發(fā)送登錄請(qǐng)求post
    yield scrapy.FormRequest.from_response(
      response,
      formxpath="http://*[@id='login_pc']",
      formdata=formdata,
      method="POST", #覆蓋之前的get請(qǐng)求
      callback=self.parse_login
    )
  def parse_login(self, response):
    #4.訪問目標(biāo)頁面
    member_url="https://www.xxx.com/member"
    yield scrapy.Request(member_url, callback=self.parse_member)
  def parse_member(self, response):
    with open("03login.html",'wb') as f:
      f.write(response.body)

更多相關(guān)內(nèi)容可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python正則表達(dá)式用法總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對(duì)大家基于Scrapy框架的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 如何使用?Python?Pandas?更新行和列

    如何使用?Python?Pandas?更新行和列

    這篇文章主要介紹了使用?Python?Pandas?更新行和列的方法,在整篇文章中,我們將使用我們現(xiàn)在要?jiǎng)?chuàng)建的數(shù)據(jù)框,這將使大家了解更新數(shù)據(jù)操作,在此之后,大家可以將這些方法應(yīng)用于自己的數(shù)據(jù),需要的朋友可以參考下
    2023-03-03
  • Python3.x+pyqtgraph實(shí)現(xiàn)數(shù)據(jù)可視化教程

    Python3.x+pyqtgraph實(shí)現(xiàn)數(shù)據(jù)可視化教程

    這篇文章主要介紹了Python3.x+pyqtgraph實(shí)現(xiàn)數(shù)據(jù)可視化教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • python實(shí)現(xiàn)掃雷游戲的示例

    python實(shí)現(xiàn)掃雷游戲的示例

    這篇文章主要介紹了python實(shí)現(xiàn)掃雷游戲的示例,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-10-10
  • 跟老齊學(xué)Python之?dāng)?shù)據(jù)類型總結(jié)

    跟老齊學(xué)Python之?dāng)?shù)據(jù)類型總結(jié)

    前面已經(jīng)洋洋灑灑地介紹了不少數(shù)據(jù)類型。不能再不顧一切地向前沖了,應(yīng)當(dāng)總結(jié)一下。這樣讓看官能夠從總體上對(duì)這些數(shù)據(jù)類型有所了解,如果能夠有一覽眾山小的感覺,就太好了。
    2014-09-09
  • Numpy數(shù)組array和矩陣matrix轉(zhuǎn)換方法

    Numpy數(shù)組array和矩陣matrix轉(zhuǎn)換方法

    這篇文章主要介紹了Numpy數(shù)組array和矩陣matrix轉(zhuǎn)換方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 淺談Python基礎(chǔ)之列表那些事兒

    淺談Python基礎(chǔ)之列表那些事兒

    這篇文章主要介紹了淺談Python基礎(chǔ)之列表那些事兒,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)Python基礎(chǔ)的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-05-05
  • Python圖片轉(zhuǎn)gif方式(將靜態(tài)圖轉(zhuǎn)化為分塊加載的動(dòng)態(tài)圖)

    Python圖片轉(zhuǎn)gif方式(將靜態(tài)圖轉(zhuǎn)化為分塊加載的動(dòng)態(tài)圖)

    這篇文章主要介紹了Python圖片轉(zhuǎn)gif方式(將靜態(tài)圖轉(zhuǎn)化為分塊加載的動(dòng)態(tài)圖),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • python 如何用terminal輸入?yún)?shù)

    python 如何用terminal輸入?yún)?shù)

    這篇文章主要介紹了python 如何用terminal輸入?yún)?shù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python如何將控制臺(tái)輸出另存為日志文件

    Python如何將控制臺(tái)輸出另存為日志文件

    這篇文章主要介紹了Python如何將控制臺(tái)輸出另存為日志文件問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Pytorch-Geometric中的Message?Passing使用及說明

    Pytorch-Geometric中的Message?Passing使用及說明

    這篇文章主要介紹了Pytorch-Geometric中的Message?Passing使用及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12

最新評(píng)論

长垣县| 溆浦县| 阿合奇县| 普格县| 壶关县| 肥东县| 晴隆县| 西昌市| 浠水县| 兖州市| 呈贡县| 德保县| 广东省| 南召县| 太湖县| 长汀县| 宁陵县| 舟山市| 晋城| 桃园市| 河北省| 德阳市| 建湖县| 徐水县| 晋宁县| 兴化市| 岗巴县| 宾阳县| 景宁| 双桥区| 石首市| 平陆县| 广安市| 多伦县| 新密市| 卓尼县| 民县| 景东| 鹤岗市| 钟祥市| 桂平市|