如何在FormRequest上指定“Content-Type”和“Accept”?

时间:2016-05-04 07:22:57

标签: python scrapy

使用<ion-item> <ion-icon name="person" item-left class="placeholder-icon"></ion-icon> <ion-label floating primary>Username</ion-label> <ion-input [(ngModel)]="login.username" ngControl="username" type="text" #username="ngForm" ng-minlength="5" required> </ion-input> </ion-item> <div [hidden]="username.valid || username.pristine"> <p *ngIf="username.errors && username.errors.required" danger padding-left> user name is required </p> <p *ngIf="username.errors && username.errors.minlength" danger padding-left> min length atleast 5 </p> </div> <ion-item> ,我需要指定内容类型为RequestForm,并且接受为application/json; charset=UTF-8。 怎么做?

目前,我的代码如下所示:

*/*

使用浏览器,请求是:

yield scrapy.FormRequest(url='...',
                         formdata={
                             ...
                         },
                         cookies={...},
                         callback=self.parse_second)

2 个答案:

答案 0 :(得分:0)

您的请求应该是这样的:

yield FormRequest(..., headers={'Content-Type': 'application/json','charset':'UTF-8'})

答案 1 :(得分:0)

Scrapy Request有一个字段headers,用于定义显式标头。这对你有用。

yield scrapy.FormRequest(url='...',
                     formdata={
                         ...
                     },
                     cookies={...}, headers={'Content-Type': 'application/json','charset':'UTF-8'},
                     callback=self.parse_second)