@book000/twitterts 0.1.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generate-types.d.ts +2 -0
- package/dist/generate-types.d.ts.map +1 -0
- package/dist/generate-types.js +248 -0
- package/dist/generate-types.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -0
- package/dist/index.js.map +1 -1
- package/dist/models/endpoints.d.ts +24 -0
- package/dist/models/endpoints.d.ts.map +1 -0
- package/dist/models/endpoints.js +3 -0
- package/dist/models/endpoints.js.map +1 -0
- package/dist/models/graphql/get/authenticated-user-tflists.d.ts +11 -0
- package/dist/models/graphql/get/authenticated-user-tflists.d.ts.map +1 -0
- package/dist/models/graphql/get/authenticated-user-tflists.js +4 -0
- package/dist/models/graphql/get/authenticated-user-tflists.js.map +1 -0
- package/dist/models/graphql/get/bookmarks.d.ts +14 -0
- package/dist/models/graphql/get/bookmarks.d.ts.map +1 -0
- package/dist/models/graphql/get/bookmarks.js +4 -0
- package/dist/models/graphql/get/bookmarks.js.map +1 -0
- package/dist/models/graphql/get/data-saver-mode.d.ts +6 -0
- package/dist/models/graphql/get/data-saver-mode.d.ts.map +1 -0
- package/dist/models/graphql/get/data-saver-mode.js +4 -0
- package/dist/models/graphql/get/data-saver-mode.js.map +1 -0
- package/dist/models/graphql/get/get-alt-text-prompt-preference.d.ts +4 -0
- package/dist/models/graphql/get/get-alt-text-prompt-preference.d.ts.map +1 -0
- package/dist/models/graphql/get/get-alt-text-prompt-preference.js +4 -0
- package/dist/models/graphql/get/get-alt-text-prompt-preference.js.map +1 -0
- package/dist/models/graphql/get/get-user-claims.d.ts +8 -0
- package/dist/models/graphql/get/get-user-claims.d.ts.map +1 -0
- package/dist/models/graphql/get/get-user-claims.js +4 -0
- package/dist/models/graphql/get/get-user-claims.js.map +1 -0
- package/dist/models/graphql/get/home-latest-timeline.d.ts +2525 -0
- package/dist/models/graphql/get/home-latest-timeline.d.ts.map +1 -0
- package/dist/models/graphql/get/home-latest-timeline.js +4 -0
- package/dist/models/graphql/get/home-latest-timeline.js.map +1 -0
- package/dist/models/graphql/get/list-pins.d.ts +6 -0
- package/dist/models/graphql/get/list-pins.d.ts.map +1 -0
- package/dist/models/graphql/get/list-pins.js +4 -0
- package/dist/models/graphql/get/list-pins.js.map +1 -0
- package/dist/models/graphql/get/lists-management-page-timeline.d.ts +172 -0
- package/dist/models/graphql/get/lists-management-page-timeline.d.ts.map +1 -0
- package/dist/models/graphql/get/lists-management-page-timeline.js +4 -0
- package/dist/models/graphql/get/lists-management-page-timeline.js.map +1 -0
- package/dist/models/graphql/get/profile-spotlights-query.d.ts +25 -0
- package/dist/models/graphql/get/profile-spotlights-query.d.ts.map +1 -0
- package/dist/models/graphql/get/profile-spotlights-query.js +4 -0
- package/dist/models/graphql/get/profile-spotlights-query.js.map +1 -0
- package/dist/models/graphql/get/search-timeline.d.ts +1327 -0
- package/dist/models/graphql/get/search-timeline.d.ts.map +1 -0
- package/dist/models/graphql/get/search-timeline.js +4 -0
- package/dist/models/graphql/get/search-timeline.js.map +1 -0
- package/dist/models/graphql/get/tweet-detail.d.ts +535 -0
- package/dist/models/graphql/get/tweet-detail.d.ts.map +1 -0
- package/dist/models/graphql/get/tweet-detail.js +4 -0
- package/dist/models/graphql/get/tweet-detail.js.map +1 -0
- package/dist/models/graphql/get/user-by-screen-name.d.ts +72 -0
- package/dist/models/graphql/get/user-by-screen-name.d.ts.map +1 -0
- package/dist/models/graphql/get/user-by-screen-name.js +4 -0
- package/dist/models/graphql/get/user-by-screen-name.js.map +1 -0
- package/dist/models/graphql/get/user-tweets.d.ts +2305 -0
- package/dist/models/graphql/get/user-tweets.d.ts.map +1 -0
- package/dist/models/graphql/get/user-tweets.js +4 -0
- package/dist/models/graphql/get/user-tweets.js.map +1 -0
- package/dist/models/graphql/post/home-latest-timeline.d.ts +1819 -0
- package/dist/models/graphql/post/home-latest-timeline.d.ts.map +1 -0
- package/dist/models/graphql/post/home-latest-timeline.js +4 -0
- package/dist/models/graphql/post/home-latest-timeline.js.map +1 -0
- package/dist/models/graphql/post/home-timeline.d.ts +1515 -0
- package/dist/models/graphql/post/home-timeline.d.ts.map +1 -0
- package/dist/models/graphql/post/home-timeline.js +4 -0
- package/dist/models/graphql/post/home-timeline.js.map +1 -0
- package/dist/scraper.d.ts +192 -0
- package/dist/scraper.d.ts.map +1 -1
- package/dist/scraper.js +386 -1
- package/dist/scraper.js.map +1 -1
- package/dist/scraper.test.d.ts +2 -0
- package/dist/scraper.test.d.ts.map +1 -0
- package/dist/scraper.test.js +34 -0
- package/dist/scraper.test.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/twitter.d.ts +7 -1
- package/dist/twitter.d.ts.map +1 -1
- package/dist/twitter.js +16 -2
- package/dist/twitter.js.map +1 -1
- package/dist/twitter.test.d.ts +2 -0
- package/dist/twitter.test.d.ts.map +1 -0
- package/dist/twitter.test.js +37 -0
- package/dist/twitter.test.js.map +1 -0
- package/package.json +12 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"home-timeline.d.ts","sourceRoot":"","sources":["../../../../src/models/graphql/post/home-timeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"home-timeline.js","sourceRoot":"","sources":["../../../../src/models/graphql/post/home-timeline.ts"],"names":[],"mappings":";AAAA,iDAAiD"}
|
package/dist/scraper.d.ts
CHANGED
|
@@ -1,3 +1,195 @@
|
|
|
1
|
+
import { Page } from 'puppeteer-core';
|
|
2
|
+
import { EndPointResponseType, GraphQLEndpoint, RESTEndpoint } from './models/endpoints';
|
|
3
|
+
/**
|
|
4
|
+
* レスポンスデバッグ出力オプション
|
|
5
|
+
*
|
|
6
|
+
* ${outputDirectory}/${type}/${name}/${method}/${timestamp}.json に出力されます。
|
|
7
|
+
*/
|
|
8
|
+
export interface TwitterScraperDebugOutputResponseOptions {
|
|
9
|
+
/**
|
|
10
|
+
* レスポンスをファイルに出力するか
|
|
11
|
+
*/
|
|
12
|
+
enable: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* レスポンスを出力するディレクトリ
|
|
15
|
+
*/
|
|
16
|
+
outputDirectory: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* デバッグオプション
|
|
20
|
+
*/
|
|
21
|
+
export interface TwitterScraperDebugOptions {
|
|
22
|
+
/**
|
|
23
|
+
* レスポンスデバッグ出力オプション
|
|
24
|
+
*
|
|
25
|
+
* 指定しない場合はデバッグ出力されません。
|
|
26
|
+
*/
|
|
27
|
+
outputResponse?: TwitterScraperDebugOutputResponseOptions;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Puppeteer オプション
|
|
31
|
+
*/
|
|
32
|
+
export interface PuppeteerOptions {
|
|
33
|
+
/**
|
|
34
|
+
* Puppeteer の実行ファイルパス
|
|
35
|
+
*
|
|
36
|
+
* 指定しない場合は chrome channel が使用されます。
|
|
37
|
+
*/
|
|
38
|
+
executablePath?: string;
|
|
39
|
+
/**
|
|
40
|
+
* デフォルトのビューポート
|
|
41
|
+
*/
|
|
42
|
+
defaultViewport?: {
|
|
43
|
+
/**
|
|
44
|
+
* ビューポートの幅
|
|
45
|
+
*/
|
|
46
|
+
width: number;
|
|
47
|
+
/**
|
|
48
|
+
* ビューポートの高さ
|
|
49
|
+
*/
|
|
50
|
+
height: number;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* ユーザーデータディレクトリ
|
|
54
|
+
*
|
|
55
|
+
* 指定しない場合は /data/userdata が使用されます。
|
|
56
|
+
*/
|
|
57
|
+
userDataDirectory?: string;
|
|
58
|
+
/**
|
|
59
|
+
* DevTools を有効にするか
|
|
60
|
+
*/
|
|
61
|
+
enableDevtools?: boolean;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* TwitterScraper オプション
|
|
65
|
+
*/
|
|
66
|
+
export interface TwitterScraperOptions {
|
|
67
|
+
/**
|
|
68
|
+
* Twitter ユーザー名
|
|
69
|
+
*/
|
|
70
|
+
username: string;
|
|
71
|
+
/**
|
|
72
|
+
* Twitter パスワード
|
|
73
|
+
*/
|
|
74
|
+
password: string;
|
|
75
|
+
/**
|
|
76
|
+
* Twitter One Time Password シークレット
|
|
77
|
+
*/
|
|
78
|
+
otpSecret?: string;
|
|
79
|
+
/**
|
|
80
|
+
* デバッグオプション
|
|
81
|
+
*/
|
|
82
|
+
debugOptions?: TwitterScraperDebugOptions;
|
|
83
|
+
/**
|
|
84
|
+
* Puppeteer オプション
|
|
85
|
+
*/
|
|
86
|
+
puppeteerOptions?: PuppeteerOptions;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* HTTP メソッド
|
|
90
|
+
*/
|
|
91
|
+
export type HttpMethod = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';
|
|
92
|
+
/**
|
|
93
|
+
* レスポンス種別
|
|
94
|
+
*/
|
|
95
|
+
export type RequestType = 'REST' | 'GRAPHQL';
|
|
96
|
+
/**
|
|
97
|
+
* レスポンス取得オプション
|
|
98
|
+
*/
|
|
99
|
+
export interface TwitterScraperGetResponseOptions {
|
|
100
|
+
/**
|
|
101
|
+
* ページ遷移先 URL
|
|
102
|
+
*/
|
|
103
|
+
url: string;
|
|
104
|
+
/**
|
|
105
|
+
* レスポンスを取得したいリクエストの HTTP メソッド
|
|
106
|
+
*/
|
|
107
|
+
method: HttpMethod;
|
|
108
|
+
/**
|
|
109
|
+
* レスポンスを取得したいリクエストの種別
|
|
110
|
+
*/
|
|
111
|
+
type: RequestType;
|
|
112
|
+
/**
|
|
113
|
+
* 取得処理のタイムアウト (ミリ秒)
|
|
114
|
+
*
|
|
115
|
+
* 指定しない場合は 30 秒でタイムアウトします。
|
|
116
|
+
* タイムアウトした場合は 'Response timeout.' Error が throw されます。
|
|
117
|
+
*/
|
|
118
|
+
timeout?: number;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Twitter スクレイピング ページクラス
|
|
122
|
+
*/
|
|
123
|
+
export declare class TwitterScraperPage {
|
|
124
|
+
readonly page: Page;
|
|
125
|
+
private readonly responses;
|
|
126
|
+
/**
|
|
127
|
+
* @param page Puppeteer のページ
|
|
128
|
+
*/
|
|
129
|
+
constructor(page: Page);
|
|
130
|
+
/**
|
|
131
|
+
* 条件に一致するレスポンスをひとつのみ取得します。
|
|
132
|
+
* 指定した timeout 値 (ミリ秒) でタイムアウトします。指定しない場合は 30 秒でタイムアウトします。
|
|
133
|
+
*
|
|
134
|
+
* @param options レスポンス取得オプション
|
|
135
|
+
* @returns レスポンス
|
|
136
|
+
*/
|
|
137
|
+
waitSingleResponse<M extends HttpMethod, T extends RequestType, N extends T extends 'GRAPHQL' ? GraphQLEndpoint : RESTEndpoint>(url: string, method: M, type: T, name: N, timeout?: number): Promise<EndPointResponseType<M, T, N>>;
|
|
138
|
+
/**
|
|
139
|
+
* 条件に一致するレスポンスをひとつ取得します。繰り返し呼び出すことで複数のレスポンスを取得できます。
|
|
140
|
+
* waitSingleResponse と異なり、レスポンス待ちを行わず、ページ遷移もしません(goto メソッドによるページ遷移が必要です)。
|
|
141
|
+
*
|
|
142
|
+
* @param options レスポンス取得オプション
|
|
143
|
+
* @returns レスポンス。一致するレスポンスがない場合は null
|
|
144
|
+
*/
|
|
145
|
+
shiftResponse<M extends HttpMethod, T extends RequestType, N extends T extends 'GRAPHQL' ? GraphQLEndpoint : RESTEndpoint>(method: M, type: T, name: N): EndPointResponseType<M, T, N> | null;
|
|
146
|
+
/**
|
|
147
|
+
* 指定した URL に遷移します。
|
|
148
|
+
*
|
|
149
|
+
* @param url 遷移先 URL
|
|
150
|
+
*/
|
|
151
|
+
goto(url: string): Promise<void>;
|
|
152
|
+
/**
|
|
153
|
+
* 要素を探し、描画範囲内に表示されるようにスクロールしたあと、クリックします。
|
|
154
|
+
* 要素が検索処理は、指定した timeout 値 (ミリ秒) でタイムアウトします。指定しない場合は 30 秒でタイムアウトします。
|
|
155
|
+
*
|
|
156
|
+
* @param selector 要素のセレクタ
|
|
157
|
+
*/
|
|
158
|
+
waitAndClick(selector: string, timeout?: number): Promise<void>;
|
|
159
|
+
/**
|
|
160
|
+
* ページの最下部までスクロールします。
|
|
161
|
+
*/
|
|
162
|
+
scrollToBottom(): Promise<void>;
|
|
163
|
+
private setRetentionResponse;
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Twitter スクレイピングクラス
|
|
167
|
+
*/
|
|
1
168
|
export declare class TwitterScraper {
|
|
169
|
+
private readonly options;
|
|
170
|
+
private browser;
|
|
171
|
+
/**
|
|
172
|
+
* @param options Twitter スクレイピングオプション
|
|
173
|
+
*/
|
|
174
|
+
constructor(options: TwitterScraperOptions);
|
|
175
|
+
/**
|
|
176
|
+
* Twitter にログインします。
|
|
177
|
+
*/
|
|
178
|
+
login(): Promise<void>;
|
|
179
|
+
/**
|
|
180
|
+
* TwitterScraperPage インスタンスを作成します。
|
|
181
|
+
*
|
|
182
|
+
* @returns TwitterScraperPage インスタンス
|
|
183
|
+
*/
|
|
184
|
+
getScraperPage(): Promise<TwitterScraperPage>;
|
|
185
|
+
/**
|
|
186
|
+
* ブラウザを閉じます。
|
|
187
|
+
*/
|
|
188
|
+
close(): Promise<void>;
|
|
189
|
+
private getBrowser;
|
|
190
|
+
private newPage;
|
|
191
|
+
private setAutoSaveResponse;
|
|
192
|
+
private getElement;
|
|
193
|
+
private getOneTimePassword;
|
|
2
194
|
}
|
|
3
195
|
//# sourceMappingURL=scraper.d.ts.map
|
package/dist/scraper.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scraper.d.ts","sourceRoot":"","sources":["../src/scraper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scraper.d.ts","sourceRoot":"","sources":["../src/scraper.ts"],"names":[],"mappings":"AACA,OAAkB,EAAyB,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAGvE,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,YAAY,EACb,MAAM,oBAAoB,CAAA;AAE3B;;;;GAIG;AACH,MAAM,WAAW,wCAAwC;IACvD;;OAEG;IACH,MAAM,EAAE,OAAO,CAAA;IAEf;;OAEG;IACH,eAAe,EAAE,MAAM,CAAA;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,cAAc,CAAC,EAAE,wCAAwC,CAAA;CAC1D;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,eAAe,CAAC,EAAE;QAChB;;WAEG;QACH,KAAK,EAAE,MAAM,CAAA;QAEb;;WAEG;QACH,MAAM,EAAE,MAAM,CAAA;KACf,CAAA;IAED;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,YAAY,CAAC,EAAE,0BAA0B,CAAA;IAEzC;;OAEG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;CACpC;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAA;AAEpE;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,SAAS,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IAEX;;OAEG;IACH,MAAM,EAAE,UAAU,CAAA;IAElB;;OAEG;IACH,IAAI,EAAE,WAAW,CAAA;IAEjB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AA2GD;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,SAAgB,IAAI,EAAE,IAAI,CAAA;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAEpB;IAEN;;OAEG;gBACS,IAAI,EAAE,IAAI;IAMtB;;;;;;OAMG;IACU,kBAAkB,CAC7B,CAAC,SAAS,UAAU,EACpB,CAAC,SAAS,WAAW,EACrB,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,eAAe,GAAG,YAAY,EAE9D,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IA8BzC;;;;;;OAMG;IACI,aAAa,CAClB,CAAC,SAAS,UAAU,EACpB,CAAC,SAAS,WAAW,EACrB,CAAC,SAAS,CAAC,SAAS,SAAS,GAAG,eAAe,GAAG,YAAY,EAC9D,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI;IAWpE;;;;OAIG;IACU,IAAI,CAAC,GAAG,EAAE,MAAM;IAM7B;;;;;OAKG;IACU,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAa5D;;OAEG;IACU,cAAc;IAU3B,OAAO,CAAC,oBAAoB;CAY7B;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAuB;IAC/C,OAAO,CAAC,OAAO,CAAqB;IAEpC;;OAEG;gBACS,OAAO,EAAE,qBAAqB;IAI1C;;OAEG;IACU,KAAK;IAmFlB;;;;OAIG;IACU,cAAc;IAK3B;;OAEG;IACU,KAAK;YAOJ,UAAU;YAuCV,OAAO;IAsBrB,OAAO,CAAC,mBAAmB;YAiCb,UAAU;IAQxB,OAAO,CAAC,kBAAkB;CAG3B"}
|
package/dist/scraper.js
CHANGED
|
@@ -1,7 +1,392 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TwitterScraper = void 0;
|
|
6
|
+
exports.TwitterScraper = exports.TwitterScraperPage = void 0;
|
|
7
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
8
|
+
const puppeteer_core_1 = __importDefault(require("puppeteer-core"));
|
|
9
|
+
const otplib_1 = require("otplib");
|
|
10
|
+
const node_path_1 = require("node:path");
|
|
11
|
+
/**
|
|
12
|
+
* レスポンスの URL として対象とする URL の定義
|
|
13
|
+
*
|
|
14
|
+
* hostname: ホスト名
|
|
15
|
+
* pathnames: パス名の配列。ワイルドカードとして * が使用できる。<NAME> のパス箇所は name として利用する
|
|
16
|
+
*/
|
|
17
|
+
const targetUrls = [
|
|
18
|
+
{
|
|
19
|
+
type: 'GRAPHQL',
|
|
20
|
+
hostname: 'api.twitter.com',
|
|
21
|
+
pathnames: ['graphql', '*', '<NAME>'],
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
type: 'GRAPHQL',
|
|
25
|
+
hostname: 'twitter.com',
|
|
26
|
+
pathnames: ['i', 'api', 'graphql', '*', '<NAME>'],
|
|
27
|
+
},
|
|
28
|
+
];
|
|
29
|
+
/**
|
|
30
|
+
* 取得したレスポンスのチェックを行い、詳細を返します。
|
|
31
|
+
* レスポンスのチェックに失敗した場合は null を返します。
|
|
32
|
+
*
|
|
33
|
+
* @param response チェックし、詳細を返したいレスポンス
|
|
34
|
+
* @returns レスポンスの詳細。チェックに失敗した場合は null
|
|
35
|
+
*/
|
|
36
|
+
async function getResponseDetails(response) {
|
|
37
|
+
if (response.request().method() === 'OPTIONS') {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
const url = new URL(response.url());
|
|
41
|
+
if (!url) {
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
const targetUrl = targetUrls.find((targetUrl) => targetUrl.hostname === url.hostname);
|
|
45
|
+
if (!targetUrl) {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
const pathnames = targetUrl.pathnames;
|
|
49
|
+
const pathname = url.pathname;
|
|
50
|
+
const pathnameParts = pathname.split('/').filter((part) => part !== '');
|
|
51
|
+
let name;
|
|
52
|
+
for (const [index, path] of pathnames.entries()) {
|
|
53
|
+
const part = pathnameParts[index];
|
|
54
|
+
if (path === '*') {
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
if (path === '<NAME>') {
|
|
58
|
+
if (!part) {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
name = part;
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
if (path !== part) {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (!name) {
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
let text;
|
|
72
|
+
try {
|
|
73
|
+
text = await response.text();
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
const type = targetUrl.type;
|
|
79
|
+
const method = response.request().method();
|
|
80
|
+
const key = getResponseKey({
|
|
81
|
+
method,
|
|
82
|
+
type,
|
|
83
|
+
name,
|
|
84
|
+
});
|
|
85
|
+
return {
|
|
86
|
+
key,
|
|
87
|
+
type,
|
|
88
|
+
method,
|
|
89
|
+
name,
|
|
90
|
+
text,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
function getResponseKey(input) {
|
|
94
|
+
return `${input.type}_${input.method}_${input.name}`.toLocaleUpperCase();
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Twitter スクレイピング ページクラス
|
|
98
|
+
*/
|
|
99
|
+
class TwitterScraperPage {
|
|
100
|
+
/**
|
|
101
|
+
* @param page Puppeteer のページ
|
|
102
|
+
*/
|
|
103
|
+
constructor(page) {
|
|
104
|
+
this.responses = {};
|
|
105
|
+
this.page = page;
|
|
106
|
+
this.setRetentionResponse(page);
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* 条件に一致するレスポンスをひとつのみ取得します。
|
|
110
|
+
* 指定した timeout 値 (ミリ秒) でタイムアウトします。指定しない場合は 30 秒でタイムアウトします。
|
|
111
|
+
*
|
|
112
|
+
* @param options レスポンス取得オプション
|
|
113
|
+
* @returns レスポンス
|
|
114
|
+
*/
|
|
115
|
+
async waitSingleResponse(url, method, type, name, timeout) {
|
|
116
|
+
setTimeout(() => {
|
|
117
|
+
throw new Error('Response timeout.');
|
|
118
|
+
}, timeout || 30000);
|
|
119
|
+
const key = getResponseKey({
|
|
120
|
+
method,
|
|
121
|
+
type,
|
|
122
|
+
name,
|
|
123
|
+
});
|
|
124
|
+
// レスポンスを待つ
|
|
125
|
+
const promise = new Promise((resolve) => {
|
|
126
|
+
setInterval(() => {
|
|
127
|
+
const responses = this.responses[key];
|
|
128
|
+
if (responses && responses.length > 0) {
|
|
129
|
+
const response = responses.shift();
|
|
130
|
+
if (response) {
|
|
131
|
+
resolve(JSON.parse(response));
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}, 500);
|
|
135
|
+
});
|
|
136
|
+
// ページ遷移
|
|
137
|
+
await this.page.goto(url);
|
|
138
|
+
return await promise;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* 条件に一致するレスポンスをひとつ取得します。繰り返し呼び出すことで複数のレスポンスを取得できます。
|
|
142
|
+
* waitSingleResponse と異なり、レスポンス待ちを行わず、ページ遷移もしません(goto メソッドによるページ遷移が必要です)。
|
|
143
|
+
*
|
|
144
|
+
* @param options レスポンス取得オプション
|
|
145
|
+
* @returns レスポンス。一致するレスポンスがない場合は null
|
|
146
|
+
*/
|
|
147
|
+
shiftResponse(method, type, name) {
|
|
148
|
+
const key = getResponseKey({
|
|
149
|
+
method,
|
|
150
|
+
type,
|
|
151
|
+
name,
|
|
152
|
+
});
|
|
153
|
+
const response = this.responses[key].shift();
|
|
154
|
+
return response ? JSON.parse(response) : null;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* 指定した URL に遷移します。
|
|
158
|
+
*
|
|
159
|
+
* @param url 遷移先 URL
|
|
160
|
+
*/
|
|
161
|
+
async goto(url) {
|
|
162
|
+
await this.page.goto(url, {
|
|
163
|
+
waitUntil: ['load', 'networkidle2'],
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* 要素を探し、描画範囲内に表示されるようにスクロールしたあと、クリックします。
|
|
168
|
+
* 要素が検索処理は、指定した timeout 値 (ミリ秒) でタイムアウトします。指定しない場合は 30 秒でタイムアウトします。
|
|
169
|
+
*
|
|
170
|
+
* @param selector 要素のセレクタ
|
|
171
|
+
*/
|
|
172
|
+
async waitAndClick(selector, timeout) {
|
|
173
|
+
const element = await this.page
|
|
174
|
+
.waitForSelector(selector, {
|
|
175
|
+
timeout: timeout || 30000,
|
|
176
|
+
})
|
|
177
|
+
.catch(() => null);
|
|
178
|
+
if (!element) {
|
|
179
|
+
throw new Error(`Element not found: ${selector}`);
|
|
180
|
+
}
|
|
181
|
+
await this.page.evaluate((element) => element?.scrollIntoView(), element);
|
|
182
|
+
await element.click();
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* ページの最下部までスクロールします。
|
|
186
|
+
*/
|
|
187
|
+
async scrollToBottom() {
|
|
188
|
+
await this.page.evaluate(() => {
|
|
189
|
+
const scrollHeight = document.documentElement.scrollHeight;
|
|
190
|
+
window.scrollTo({
|
|
191
|
+
top: scrollHeight,
|
|
192
|
+
behavior: 'smooth',
|
|
193
|
+
});
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
setRetentionResponse(page) {
|
|
197
|
+
page.on('response', async (response) => {
|
|
198
|
+
const details = await getResponseDetails(response);
|
|
199
|
+
if (!details) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
const { key, text } = details;
|
|
203
|
+
this.responses[key] = this.responses[key] || [];
|
|
204
|
+
this.responses[key].push(text);
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
exports.TwitterScraperPage = TwitterScraperPage;
|
|
209
|
+
/**
|
|
210
|
+
* Twitter スクレイピングクラス
|
|
211
|
+
*/
|
|
4
212
|
class TwitterScraper {
|
|
213
|
+
/**
|
|
214
|
+
* @param options Twitter スクレイピングオプション
|
|
215
|
+
*/
|
|
216
|
+
constructor(options) {
|
|
217
|
+
this.options = options;
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Twitter にログインします。
|
|
221
|
+
*/
|
|
222
|
+
async login() {
|
|
223
|
+
// ブラウザ作成
|
|
224
|
+
this.browser = await this.getBrowser();
|
|
225
|
+
// ログイン処理
|
|
226
|
+
const loginPage = await this.newPage();
|
|
227
|
+
await loginPage.goto('https://twitter.com', {
|
|
228
|
+
waitUntil: ['load', 'networkidle2'],
|
|
229
|
+
});
|
|
230
|
+
await new Promise((resolve) => setTimeout(resolve, 3000));
|
|
231
|
+
const href = await loginPage.evaluate(() => {
|
|
232
|
+
return document.location.href;
|
|
233
|
+
});
|
|
234
|
+
if (href !== 'https://twitter.com/home') {
|
|
235
|
+
await loginPage.goto('https://twitter.com/i/flow/login', {
|
|
236
|
+
waitUntil: ['load', 'networkidle2'],
|
|
237
|
+
});
|
|
238
|
+
const username = this.options.username;
|
|
239
|
+
await loginPage
|
|
240
|
+
.waitForSelector('input[autocomplete="username"]')
|
|
241
|
+
.then((element) => element?.type(username, { delay: 100 }))
|
|
242
|
+
.catch((error) => new Error('Username input not found.', error));
|
|
243
|
+
// next button
|
|
244
|
+
await loginPage
|
|
245
|
+
.waitForSelector('div[role="button"]:not([data-testid])')
|
|
246
|
+
.then((element) => element?.click())
|
|
247
|
+
.catch((error) => new Error('Next button not found.', error));
|
|
248
|
+
const password = this.options.password;
|
|
249
|
+
// password
|
|
250
|
+
await loginPage
|
|
251
|
+
.waitForSelector('input[autocomplete="current-password"]')
|
|
252
|
+
.then((element) => element?.type(password, { delay: 100 }))
|
|
253
|
+
.catch((error) => new Error('Password input not found.', error));
|
|
254
|
+
// login button
|
|
255
|
+
await loginPage
|
|
256
|
+
.waitForSelector('div[role="button"][data-testid="LoginForm_Login_Button"]')
|
|
257
|
+
.then((element) => element?.click())
|
|
258
|
+
.catch((error) => new Error('Login button not found.', error));
|
|
259
|
+
// need auth code ?
|
|
260
|
+
const authCodeInput = await this.getElement(loginPage, 'input[data-testid="ocfEnterTextTextInput"]', 3000);
|
|
261
|
+
if (authCodeInput) {
|
|
262
|
+
const authCodeSecret = this.options.otpSecret;
|
|
263
|
+
if (!authCodeSecret) {
|
|
264
|
+
throw new Error('OTP secret not found.');
|
|
265
|
+
}
|
|
266
|
+
const authCode = this.getOneTimePassword(authCodeSecret);
|
|
267
|
+
await authCodeInput.type(authCode, { delay: 100 });
|
|
268
|
+
await loginPage
|
|
269
|
+
.waitForSelector('div[role="button"][data-testid="ocfEnterTextNextButton"]')
|
|
270
|
+
.then((element) => element?.click())
|
|
271
|
+
.catch((error) => new Error('OTP next button not found.', error));
|
|
272
|
+
await new Promise((resolve, reject) => {
|
|
273
|
+
setTimeout(() => {
|
|
274
|
+
reject(new Error('Login timeout.'));
|
|
275
|
+
}, 10000);
|
|
276
|
+
const interval = setInterval(() => {
|
|
277
|
+
if (loginPage.url() === 'https://twitter.com/home') {
|
|
278
|
+
clearInterval(interval);
|
|
279
|
+
resolve();
|
|
280
|
+
}
|
|
281
|
+
}, 500);
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
await loginPage.close();
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* TwitterScraperPage インスタンスを作成します。
|
|
289
|
+
*
|
|
290
|
+
* @returns TwitterScraperPage インスタンス
|
|
291
|
+
*/
|
|
292
|
+
async getScraperPage() {
|
|
293
|
+
const page = await this.newPage();
|
|
294
|
+
return new TwitterScraperPage(page);
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* ブラウザを閉じます。
|
|
298
|
+
*/
|
|
299
|
+
async close() {
|
|
300
|
+
if (!this.browser) {
|
|
301
|
+
return;
|
|
302
|
+
}
|
|
303
|
+
await this.browser.close();
|
|
304
|
+
}
|
|
305
|
+
async getBrowser() {
|
|
306
|
+
const puppeteerArguments = [
|
|
307
|
+
'--no-sandbox',
|
|
308
|
+
'--disable-setuid-sandbox',
|
|
309
|
+
'--disable-dev-shm-usage',
|
|
310
|
+
'--disable-accelerated-2d-canvas',
|
|
311
|
+
'--no-first-run',
|
|
312
|
+
'--no-zygote',
|
|
313
|
+
'--disable-gpu',
|
|
314
|
+
'--lang=ja',
|
|
315
|
+
'--window-size=600,1000',
|
|
316
|
+
];
|
|
317
|
+
if (this.options.puppeteerOptions?.enableDevtools) {
|
|
318
|
+
puppeteerArguments.push('--auto-open-devtools-for-tabs');
|
|
319
|
+
}
|
|
320
|
+
const userDataDirectory = this.options.puppeteerOptions?.userDataDirectory || '/data/userdata';
|
|
321
|
+
const browser = await puppeteer_core_1.default.launch({
|
|
322
|
+
headless: false,
|
|
323
|
+
executablePath: this.options.puppeteerOptions?.executablePath,
|
|
324
|
+
channel: 'chrome',
|
|
325
|
+
args: puppeteerArguments,
|
|
326
|
+
defaultViewport: {
|
|
327
|
+
width: this.options.puppeteerOptions?.defaultViewport?.width || 600,
|
|
328
|
+
height: this.options.puppeteerOptions?.defaultViewport?.height || 1000,
|
|
329
|
+
},
|
|
330
|
+
userDataDir: userDataDirectory,
|
|
331
|
+
});
|
|
332
|
+
process.on('SIGINT', async () => {
|
|
333
|
+
await browser.close();
|
|
334
|
+
process.exit(0);
|
|
335
|
+
});
|
|
336
|
+
return browser;
|
|
337
|
+
}
|
|
338
|
+
async newPage() {
|
|
339
|
+
if (!this.browser) {
|
|
340
|
+
throw new Error('Failed to create page. Browser is not initialized.');
|
|
341
|
+
}
|
|
342
|
+
const page = await this.browser.newPage();
|
|
343
|
+
page.setDefaultNavigationTimeout(120 * 1000);
|
|
344
|
+
await page.evaluateOnNewDocument(() => {
|
|
345
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
346
|
+
Object.defineProperty(navigator, 'webdriver', () => { });
|
|
347
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
348
|
+
// @ts-ignore
|
|
349
|
+
// eslint-disable-next-line no-proto
|
|
350
|
+
delete navigator.__proto__.webdriver;
|
|
351
|
+
});
|
|
352
|
+
this.setAutoSaveResponse(page);
|
|
353
|
+
return page;
|
|
354
|
+
}
|
|
355
|
+
setAutoSaveResponse(page) {
|
|
356
|
+
if (!this.options.debugOptions?.outputResponse?.enable) {
|
|
357
|
+
return;
|
|
358
|
+
}
|
|
359
|
+
page.on('response', async (response) => {
|
|
360
|
+
const details = await getResponseDetails(response);
|
|
361
|
+
if (!details) {
|
|
362
|
+
return;
|
|
363
|
+
}
|
|
364
|
+
const { type, name, method, text } = details;
|
|
365
|
+
const pathNotIncludedExtension = (0, node_path_1.join)(this.options.debugOptions?.outputResponse?.outputDirectory ||
|
|
366
|
+
'/data/debug', type.toLowerCase(), name, method, response.status().toString(), `${Date.now()}.`);
|
|
367
|
+
node_fs_1.default.mkdirSync((0, node_path_1.dirname)(pathNotIncludedExtension), { recursive: true });
|
|
368
|
+
try {
|
|
369
|
+
const data = JSON.parse(text);
|
|
370
|
+
const path = `${pathNotIncludedExtension}json`;
|
|
371
|
+
node_fs_1.default.writeFileSync(path, JSON.stringify(data, null, 2));
|
|
372
|
+
}
|
|
373
|
+
catch {
|
|
374
|
+
const path = `${pathNotIncludedExtension}txt`;
|
|
375
|
+
node_fs_1.default.writeFileSync(path, text);
|
|
376
|
+
}
|
|
377
|
+
});
|
|
378
|
+
}
|
|
379
|
+
async getElement(page, selector, timeout = 3000) {
|
|
380
|
+
try {
|
|
381
|
+
return await page.waitForSelector(selector, { timeout });
|
|
382
|
+
}
|
|
383
|
+
catch {
|
|
384
|
+
return null;
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
getOneTimePassword(secret) {
|
|
388
|
+
return otplib_1.authenticator.generate(secret);
|
|
389
|
+
}
|
|
5
390
|
}
|
|
6
391
|
exports.TwitterScraper = TwitterScraper;
|
|
7
392
|
//# sourceMappingURL=scraper.js.map
|