0.1.9 • Published 3 years ago

dcinside-crawler v0.1.9

Weekly downloads
-
License
MIT
Repository
-
Last release
3 years ago

dcinside-crawler

typescript dcinside crawler

Installation

npm install dcinside-crawler --save
yarn add dcinside-crawler
bower install dcinside-crawler --save

Usage

import { Crawler } from 'dcinside-crawler';
const rps = 10; //default request per seconeds
const retries = 5; // default max retries number
const crawler = new Crawler(rps, retries);
const gallery = {
  id: 'programming',
  isMinser: false,
};
/* Fetch 101 number of documents start from frist page */
let documentHeaders = await crawler.documentHeaders({ gallery, page=1, limit=101 });
documentHeaders.length === 101 // true

/* Fetch all new published documents since the last document */
let newPublishedDocumentHeaders = await crawler.documentHeaders({ gallery, lastDocumentId: documentHeaders[0].id })
// let newPublishedDocumentHeaders = await crawler.documentHeaders({ gallery, lastDocumentCreatedAt: documentHeaders[0].createdAt })

documentHeaders[0];
/* 
 * DocumentHeader {
 *  gallery: { id: 'programming', isMinser: false },
 *  id: 10002,
 *  title: '좆목현장 검거.jpg',
 *  author: { nickname: 'ㅇㅇ',  ip: '10.20', },
 *  createdAt: new Date('2020-01-01T00:00:00Z'),
 *  commentCount: 0,
 *  likeCount: 0,
 *  hasImage: false;
 *  hasVideo: false;
 *  isRecommend: false;
 * }
 */

/* Fetch all comments of document */
let comments = await crawler.comments({ document: documentHeaders[0] })

/* Fetch all new published comments since the last comment */
let newPublishedComments = await crawler.comments({ document: documentHeaders[0], lastCommentId: comments[0].id })

comments[0];
/* 
 * Comment {
 *  id: 219021,
 *  author: { nickname: '초코냥',  id: 'abcde', },
 *  parent?: Comment,
 *  createdAt: new Date('2020-01-01T00:00:00Z'),
 *  document: { gallery: {id: 'programming', isMinser: false}, id: 10002 },
 *  createdAt: new Date('2020-01-01T00:00:00Z'),
 *  contents?: undefined,     // set if this is text comment
 *  voiceCopyId?: undefined, // set if this is voice comment
 *  dccon?: Dccon{          //set if this is dccon
 *    dcconName: '1';
 *    dcconPackageId: 'aspfhj3h98h9haos';
 *    imageUrl: 'https://img.dcinside.com/...',
 *  },
 * }
 */

/* Fetch active gallery list(sorted by following order: major realtime, minor realtime, major weekly, minor weekly) */
let activeGalleryIndexes = await crawler.activeGalleryIndexes();

activeGalleryIndexes[0];
/*
 * GalleryIndex { 
 *  id: 'twiceyou', 
 *  isMiner: true, 
 *  name: '트와이스 유튜브' 
 * }
 *
 */

Test

npm run test
0.1.9

3 years ago

0.1.8

4 years ago

0.1.7

4 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.4

4 years ago

0.1.0

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.1.3

4 years ago

0.0.9

4 years ago

0.0.8

4 years ago

0.0.7

4 years ago

0.0.4

4 years ago

0.0.6

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago