scrapy模拟登陆小例子

# -*- coding: utf-8 -*-
import scrapy
from scrapy.http import Request,FormRequest

class IqianSpider(scrapy.Spider):
    name = ‘iqian‘
    allowed_domains = [‘edu.iqianxxx.com‘]
    # start_urls = [‘http://edu.iqianxxx.com/‘]
    headers = {‘User-Agent‘: ‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36 LBBROWSER‘}

    # 入口
    def start_requests(self):
        start_url = "http://edu.iqianxxx.com/index_user_login.html"
        return [Request(url=start_url, meta={"cookiejar": 1}, callback=self.login)]

    def login(self, response):
        data = {
            "number": "xxxx",
            "passwd": "xxxx",
        }
        print("登录中...............")
        return [FormRequest.from_response(response,
                                        meta={"cookiejar": response.meta["cookiejar"]},
                                        headers=self.headers,
                                        formdata=data,
                                        callback=self.next1,
        )]

    #需要在跳转一次,以防中间页面
    def next1(self, response):
        yield Request(url="http://edu.iqianxxx.com/index_user_index.html", callback=self.next2)

    def next2(self, response):
        print(response.url)
        pass

原文地址:https://www.cnblogs.com/lilied/p/8343773.html

时间: 2024-08-02 05:50:33

scrapy模拟登陆小例子的相关文章

Scrapy模拟登陆

1. 为什么需要模拟登陆? #获取cookie,能够爬取登陆后的页面 2. 回顾: requests是如何模拟登陆的? #1.直接携带cookies请求页面 #2.找接口发送post请求存储cookie 3. selenium是如何模拟登陆的? #找到对应的input标签,输入文字点击登录 4. 那么对于scrapy来说,也是有两个方法模拟登陆 # 1.直接携带cookie # 2.找到发送post请求的url地址,带上信息,发送请求 1. scrapy模拟登陆之携带cookie 应用场景: 1

scrapy模拟登陆知乎--抓取热点话题

工具准备 在开始之前,请确保 scrpay 正确安装,手头有一款简洁而强大的浏览器, 若是你有使用 postman 那就更好了. scrapy genspider zhihu 使用以上命令生成知乎爬虫,代码如下: # -*- coding: utf-8 -*- import scrapy class ZhihuSpider(scrapy.Spider): name = 'zhihu' allowed_domains = ['www.zhihu.com'] start_urls = ['http:

运维学python之爬虫高级篇(六)scrapy模拟登陆

上一篇介绍了如何爬取豆瓣TOP250的相关内容,今天我们来模拟登陆GitHub. 1 环境配置 语言:Python 3.6.1 IDE: Pycharm 浏览器:firefox 抓包工具:fiddler 爬虫框架:Scrapy 1.5.0 操作系统:Windows 10 家庭中文版 2 爬取前分析 分析登陆提交信息分析登陆信息我使用的是fiddler,fiddler的使用方法就不作介绍了,大家可以自行搜索,首先我们打开github的登陆页面,输入用户名密码,提交查看fiddler获取的信息,我这

Python快速开发分布式搜索引擎Scrapy精讲—scrapy模拟登陆和知乎倒立文字验证码识别

第一步.首先下载,大神者也的倒立文字验证码识别程序 下载地址:https://github.com/muchrooms/... 注意:此程序依赖以下模块包 Keras==2.0.1 Pillow==3.4.2 jupyter==1.0.0 matplotlib==1.5.3 numpy==1.12.1 scikit-learn==0.18.1 tensorflow==1.0.1 h5py==2.6.0 numpy-1.13.1+mkl 我们用豆瓣园来加速安以上依赖装如: pip install

scrapy 模拟登陆

import scrapy import urllib.request from scrapy.http import Request,FormRequest class LoginspdSpider(scrapy.Spider): name = "loginspd" allowed_domains = ["douban.com"] start_urls = ['http://douban.com/'] headers = { 'User-Agent': 'Mozi

简单的模拟登陆发帖例子

#!/usr/bin/env python # encoding: utf-8 import re import urllib import os,datetime import sys import time from selenium import webdriver from BeautifulSoup import BeautifulSoup from DiscuzAPI import DiscuzAPI def getWorkdays(): holiday_list = [] over

scrapy模拟登陆的几种方法

方法一: 方法二: 方法三: 原文地址:https://www.cnblogs.com/lmx123/p/9248348.html

Jsoup模拟登陆例子

Jsoup模拟登陆小例子,不同的网站,需要不同的模拟策略,散仙在这里仅仅作为一个引导学习. Java代码   package com.jsouplogin; import java.util.HashMap; import java.util.List; import java.util.Map; import org.jsoup.Connection; import org.jsoup.Jsoup; import org.jsoup.Connection.Method; import org.

博客园的模拟登陆(Simulated Login)

查看正常情况下登录博客园时本地浏览器向博客园的服务器发送的数据 依据上一步得到的由本地浏览器发送给博客园服务器的数据包内容进行模拟登陆 scrapy模拟登陆博客园 Reference 1.查看正常情况下登录博客园时本地浏览器向博客园的服务器发送的数据 首先打开博客园登录界面,填入登录用户名和密码,按快捷键 Ctrl+Alt+I 打开开发者管理器,然后点击登录 按钮,则可以在开发者管理器里看到发送的数据包内容. 数据包内容的查看位置如下图所示. 下面贴出了该数据包的内容 1. General 1.