返回首页
最新
你好,
我几周前发布了一些关于我自定义抓取语言的内容。这个项目确实引起了一些关注,这让我感到非常兴奋。
GitHub 仓库:[https://github.com/tadpolehq/tadpole](https://github.com/tadpolehq/tadpole)
文档:[https://tadpolehq.com/](https://tadpolehq.com/)
在过去的两周里,我专注于引入特定的隐匿操作、更复杂的控制流操作以及用于清理数据的各种评估器。
以下是一个从 `books.toscrape.com` 抓取数据的示例:
```plaintext
main {
new_page {
goto "https://books.toscrape.com/"
loop {
do {
$$ article.product_pod {
extract "books[]" {
title { $ "h3 a"; attr title }
rating {
$ ".star-rating";
attr "class";
extract "star-rating (One|Two|Three|Four|Five)" caseInsensitive=#true;
func "(v) => ({'one': 1, 'two': 2, 'three': 3, 'four': 4, 'five': 5}[v.toLowerCase()] || null)"
}
price { $ "p.price_color"; text; as_float }
in_stock { $ "p.availability"; text; matches "In stock" caseInsensitive=#true }
}
}
}
while { $ "li.next" }
next {
$ "li.next a" { click }
wait_until
}
}
}
}
```
我引入了像 `apply_identity` 这样的操作,用于覆盖用户代理头和用户代理元数据。以下是一个选择性创建不同身份的示例模块:
```plaintext
module stealth {
// Apple M2 Pro
action apply_apple_m2 {
apply_identity mac
set_webgl_vendor "Apple Inc." "Apple M2"
set_device_memory 16
set_hardware_concurrency 8
set_viewport 1440 900 deviceScaleFactor=2
}
// Windows Desktop
action apply_windows_16_8 {
apply_identity windows
set_webgl_vendor "Google Inc. (Intel)" "ANGLE (Intel, Intel(R) UHD Graphics 620 Direct3D11 vs_5_0 ps_5_0)"
set_device_memory 16
set_hardware_concurrency 8
set_viewport 1920 1080
}
// Windows Budget Laptop
action apply_windows_8_4 {
apply_identity windows
set_webgl_vendor "Google Inc. (Intel)" "ANGLE (Intel, Intel(R) UHD Graphics 620 Direct3D11 vs_5_0 ps_5_0)"
set_device_memory 8
set_hardware_concurrency 4
set_viewport 1366 768
}
}
```
完整的发布更新日志可以在这里查看:[https://github.com/tadpolehq/tadpole/releases/](https://github.com/tadpolehq/tadpole/releases/)
我对下一个 0.3.0 版本的目标是重点关注插件、通过消息队列进行分布式执行、支持 Redis 爬虫,以及静态解析,而不仅仅是通过 CDP/Chrome。
我会尽量保持每两周发布一次新版本!
独立开发者,位于纽约哈德逊河谷。我创建了ROLLIN,因为谷歌地图只给轮椅用户提供了一个是/否的复选框,并称之为无障碍数据。
ROLLIN对地点进行0-100的评分,依据六个特征:轮椅入口、无障碍卫生间、平坦入口、停车位、宽走道、电梯。数据管道从OpenStreetMap提取数据,交叉参考谷歌地点,并通过一个信任加权评分系统进行社区验证。
技术栈:原生JavaScript(无框架)、Netlify无服务器、Supabase/Postgres、Leaflet地图。覆盖纽约、加利福尼亚、佛罗里达、马萨诸塞、新泽西、宾夕法尼亚约56,000个地点。
免费使用,开发者可享受免费的API层。针对更高使用量和商业用途提供付费层。
如有任何问题,我很乐意回答。:)
网站:https://joinrollin.com
API文档:https://joinrollin.com/developers
我创建了一个免费的基于浏览器的工具,用于探索音阶、调式及其自然和声。您可以选择任何根音和音阶(大调、自然小调、所有七种调式以及70多种其他音阶),并立即查看哪些和弦(三和弦、七和弦、九和弦等)属于该调。
该工具还包含一个内置的音序器,因此如果您找到了适合您音阶的有趣和弦,您可以将它们编排成一个和弦进行,并听听它们如何相互融合。无需在理论参考和数字音频工作站(DAW)之间切换,只需测试一下 ii–V–I 在您喜欢的音阶中是否听起来合适。
无需注册,无广告,无付费墙,这只是我在学习音乐理论时希望能有的一个工具。此外,还有越来越多的文章涵盖了自然和声、七和弦、调式、扩展爵士和声以及常见和弦进行。
该工具是使用 Hugo 构建的静态网站。非常希望能收到其他音乐人和音乐理论爱好者的反馈。