Skip to content
/ rod Public
forked from go-rod/rod

A Devtools driver for web automation and scraping

License

Notifications You must be signed in to change notification settings

zhybs/rod

This branch is 112 commits behind go-rod/rod:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

e24573b · Apr 1, 2023
Nov 17, 2022
Feb 6, 2023
Apr 1, 2023
May 23, 2022
Nov 16, 2022
Feb 1, 2020
Nov 14, 2022
Feb 10, 2023
Apr 1, 2023
Mar 25, 2022
Feb 15, 2023
Nov 16, 2022
Oct 16, 2022
Mar 21, 2023
Mar 21, 2023
Jan 14, 2023
Nov 16, 2022
Nov 24, 2022
Nov 24, 2022
May 23, 2022
Nov 22, 2022
Sep 22, 2022
May 26, 2022
Nov 16, 2022
Oct 16, 2022
Feb 6, 2023
Mar 30, 2022
Dec 25, 2022
Nov 16, 2022
Sep 3, 2022
Jan 10, 2023
Mar 21, 2023
Oct 6, 2022
Nov 9, 2022
Nov 22, 2022
Sep 22, 2022
Aug 27, 2022

Repository files navigation

Overview

Go Reference Discord Chat

Rod is a high-level driver directly based on DevTools Protocol. It's designed for web automation and scraping for both high-level and low-level use, senior developers can use the low-level packages and functions to easily customize or build up their own version of Rod, the high-level functions are just examples to build a default version of Rod.

中文 API 文档

Features

  • Chained context design, intuitive to timeout or cancel the long-running task
  • Auto-wait elements to be ready
  • Debugging friendly, auto input tracing, remote monitoring headless browser
  • Thread-safe for all operations
  • Automatically find or download browser
  • High-level helpers like WaitStable, WaitRequestIdle, HijackRequests, WaitDownload, etc
  • Two-step WaitEvent design, never miss an event (how it works)
  • Correctly handles nested iframes or shadow DOMs
  • No zombie browser process after the crash (how it works)
  • CI enforced 100% test coverage

Examples

Please check the examples_test.go file first, then check the examples folder.

For more detailed examples, please search the unit tests. Such as the usage of method HandleAuth, you can search all the *_test.go files that contain HandleAuth, for example, use Github online search in repository. You can also search the GitHub issues or discussions, a lot of usage examples are recorded there.

Here is a comparison of the examples between rod and Chromedp.

If you have questions, please raise an issues/discussions or join the chat room.

Join us

Your help is more than welcome! Even just open an issue to ask a question may greatly help others.

Please read How To Ask Questions The Smart Way before you ask questions.

We use Github Projects to manage tasks, you can see the priority and progress of the issues here.

If you want to contribute please read the Contributor Guide.

About

A Devtools driver for web automation and scraping

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 97.6%
  • HTML 1.5%
  • Other 0.9%