summaryrefslogtreecommitdiff
path: root/content/docs/configuration/caching.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/docs/configuration/caching.md')
-rw-r--r--content/docs/configuration/caching.md36
1 files changed, 36 insertions, 0 deletions
diff --git a/content/docs/configuration/caching.md b/content/docs/configuration/caching.md
new file mode 100644
index 0000000..2c6766a
--- /dev/null
+++ b/content/docs/configuration/caching.md
@@ -0,0 +1,36 @@
+---
+title: 'Caching'
+weight: 7
+---
+
+The `cache` config option allows you to enable file-based request caching. When enabled every request cached with its raw response. When the cache is populated and you re-run the scraper, requests will be served directly from cache.
+
+This also allows you to modify your scraping script afterwards and collect new results immediately.
+
+```javascript {filename="Configuration"}
+export const config = {
+ url: "http://example.com/",
+ cache: "file",
+ // ...
+};
+```
+
+### Cache File
+
+When caching is enabled using the `cache: "file"` option, a `.cache` file will be created with the name of your scraping script.
+
+```bash {filename="Terminal"}
+$ flyscrape run hackernews.js # Will populate: hackernews.cache
+```
+
+### Shared cache
+
+In case you want to share a cache between different scraping scripts, you can specify where to store the cache file.
+
+```javascript {filename="Configuration"}
+export const config = {
+ url: "http://example.com/",
+ cache: "file:/some/path/shared.cache",
+ // ...
+};
+```