Form-parser
form-reader
is a part of a bigger project aiming to support Unofficial Facebook Graph. It allows you to submit your custom data to every facebook form.
Installation
npm i form-reader
Usage
You can login facebook with your own account get a valid cookie for later use. Notice: won't work with 2-factor authen accounts.
const FormReader = const formReader = willSendRequest: headers: 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36' const loginURL = 'https://mbasic.facebook.com/'const headers = await thisformReaderconst cookie = headers'set-cookie'
After having a valid cookie, you can do lots of awesome stuff. for example post a message to your facebook
const FormReader = const formReader = willSendRequest: headers: 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36' cookie: <YOUR_VALID_COOKIE> await thisformReader
Initialize
const formReader = options
options
is an object, it contains properties:
useCache
- use yoururl
to cache http request (type
:bool
,default
:false
)willSendRequest
- pass to option of request (type
:<object|function>
,default
:{}
)
Pipeline
You can create a sequence of form submits by using pipeline
formReaderstartURL
a stage
must contains properties
formAt
- position of form (type
:int
,default
:0
)willSubmit
- provide all fields of form inrequiredFields
and posible submit actions insubmitFields
willSendRequest
- provideresponse
from previous request, which help you to decideurl
,headers
, ... of next stagenextURL
- provideresponse
from previous request, has to return aurl
for next step
Transpoter
If you want to keep the same headers
of a previous step to crawle
data from other page then using
const transporter = formReader const response = await transporter