python培训之scrapy模拟登录的方法

发布时间:2023-02-03 09:57:25 人气:41 作者:多测师

  python scrapy模拟登录的方法

  1、requests模块。直接携带cookies请求页面。

  找到url,发送post请求存储cookie。

  2、selenium(浏览器自动处理cookie)。

  找到相应的input标签,输入文本,点击登录。

  3、scrapy直接带cookies。

  找到url,发送post请求存储cookie。

  # -*- coding: utf-8 -*-

python培训之scrapy模拟登录的方法

  import scrapy

  import re

  class GithubLoginSpider(scrapy.Spider):

  name = 'github_login'

  allowed_domains = ['github.com']

  start_urls = ['https://github.com/login']

  def parse(self, response): # 发送Post请求获取Cookies

  authenticity_token = response.xpath('//input[@name="authenticity_token"]/@value').extract_first()

  utf8 = response.xpath('//input[@name="utf8"]/@value').extract_first()

  commit = response.xpath('//input[@name="commit"]/@value').extract_first()

  form_data = {

  'login': 'pengjunlee@163.com',

  'password': '123456',

  'webauthn-support': 'supported',

  'authenticity_token': authenticity_token,

  'utf8': utf8,

  'commit': commit}

  yield scrapy.FormRequest("https://github.com/session", formdata=form_data, callback=self.after_login)

  def after_login(self, response): # 验证是否请求成功

  print(re.findall('Learn Git and GitHub without any code!', response.body.decode()))

  以上就是python scrapy模拟登录的方法,希望对大家有所帮助。更多Python学习指路:请关注多测师。https://www.e70w.com/xwzx/




返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线