龙行博客

走路看风景,经历看人生,岁月留痕迹,人生留轨迹,17的历史,18的豪情,时间的匆忙,人生的风景,放开心胸往前走,成功再远行,放开理想往前走,梦想再行动。
现在位置:首页 > scrapy发送post请求

scrapy发送post请求

龙行        2019-8-28    85    0评论    本文已被百度收录点击查看详情

有时候我们在执行任务的时候需要发送post请求(比如模拟登陆),那么这时候就需要使用到Request的子类FromRequest来实现,如果想要爬虫在一开始的时候就发送post请求,那么就需要在爬虫类中重写start_requests(self)方法,并且不再抵用start_urls里面的url,如果不重写start_requests(self)那么爬虫会自动获取start_urls里面的url,文笔有限,自己看得懂就行: 

实例:

# -*- coding: utf-8 -*-
import scrapy
from douban.items import DoubanItem
import re
from urllib import parse


class Douban250Spider(scrapy.Spider):
    name = 'login'
    allowed_domains = ['renren.com']
    start_urls = ['https://renren.com']

    def start_requests(self):
        url = "http://www.renren.com/PLogin.do"
        data = {"email":"970138074@qq.com", "password": "pythonspider"}
        request = scrapy.FormRequest(url, formdata=data, callback=self.parse_page)
        yield request

    def parse_page(self):
        request = scrapy.Request(url='http://www.renren.com/880151247/profile', callback=self.parse_profile)
        yield request

    def parse_profile(self, response):
        with open('dp.html', 'w', encoding='utf-8') as fp:
            fp.write(response.text)


评论一下 分享本文 赞助站长

赞助站长X

扫码赞助站长
联系站长
龙行博客
  • 版权申明:此文如未标注转载均为本站原创,自由转载请表明出处《龙行博客》。
  • 本文网址:https://www.liaotaoo.cn/288.html
  • 上篇文章:scrapy设置随机请求头
  • 下篇文章:scrapy通过Pipeline讲数据保存成json文件
  • python3 scrapy
挤眼 亲亲 咆哮 开心 想想 可怜 糗大了 委屈 哈哈 小声点 右哼哼 左哼哼 疑问 坏笑 赚钱啦 悲伤 耍酷 勾引 厉害 握手 耶 嘻嘻 害羞 鼓掌 馋嘴 抓狂 抱抱 围观 威武 给力
提交评论

清空信息
关闭评论
快捷导航
联系博主
在线壁纸
给我留言
光羽影视
音乐欣赏
返回顶部