Skip to content

PulsarRPA: A Super-Fast, AI-Enabled Browser Automation Solution! ๐Ÿ’–

License

Notifications You must be signed in to change notification settings

platonai/PulsarRPA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿค– PulsarRPA

English | ็ฎ€ไฝ“ไธญๆ–‡ | ไธญๅ›ฝ้•œๅƒ

๐ŸŒŸ Introduction

๐Ÿ’– PulsarRPA: The AI-Powered, Lightning-Fast Browser Automation Solution! ๐Ÿ’–

PulsarRPA is an AI-enabled ๐Ÿค–, high-performance ๐Ÿš€, distributed ๐ŸŒ, and open-source ๐Ÿ”“ browser automation platform, built for large-scale automation ๐Ÿญ. It excels at:

  • ๐Ÿค– AI integration with LLMs for smarter automation
  • โšก Ultra-fast, spider-grade browser automation
  • ๐Ÿง  Advanced web content understanding
  • ๐Ÿ“Š Powerful data extraction APIs

PulsarRPA is designed to meet the demands of modern web automation, delivering accurate โœ… and comprehensive ๐Ÿ“š data extraction โ€” even from the most complex ๐Ÿ”„ and dynamic โšก websites.

๐ŸŽฅ Demo Videos

๐ŸŽฌ YouTube: Watch the video

๐Ÿ“บ Bilibili: https://www.bilibili.com/video/BV1kM2rYrEFC

๐Ÿš€ Quick Start Guide

๐ŸŒŸ For Beginners - Just Talk, No Special Skills Required!

Run

Download the latest Executable Jar and run it.

# Linux/macOS and Windows (if curl is available)
curl -L -o PulsarRPA.jar https://github.com/platonai/PulsarRPA/releases/download/v3.0.2/PulsarRPA.jar
java -D DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY} -jar PulsarRPA.jar

You can ignore DEEPSEEK_API_KEY if you don't need to use the AI features.

Download links:

For docker user:

docker run -d -p 8182:8182 -e DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY} galaxyeye88/pulsar-rpa:latest

๐Ÿ’ฌ Chat About a Webpage

Talk about a webpage using the chat-about API:

curl -X POST "http://localhost:8182/api/ai/chat-about" -H "Content-Type: application/json" -d '{
 "url": "https://www.amazon.com/dp/B0C1H26C46",
 "prompt": "introduce this product"
}'

๐Ÿ“Š Extract Data

Extract data from a webpage using extract API:

curl -X POST "http://localhost:8182/api/ai/extract" -H "Content-Type: application/json" -d '{
  "url": "https://www.amazon.com/dp/B0C1H26C46",
  "prompt": "product name, price, and description"
}'

๐Ÿ’ฌ Chat with AI

Use the chat API to ask any questions:

curl http://localhost:8182/api/ai/chat?prompt=What-is-the-most-fantastical-technology-today

Use post method to send a longer prompt:

curl -X POST "http://localhost:8182/api/ai/chat" -H "Content-Type: application/json" -d '
What is the most fantastical technology today?
You should return a list of 5 items.
'

๐ŸŽ“ For Advanced Users - LLM + X-SQL

curl -X POST "http://localhost:8182/api/x/e" -H "Content-Type: text/plain" -d "
select
  llm_extract(dom, 'product name, price, ratings') as llm_extracted_data,
  dom_base_uri(dom) as url,
  dom_first_text(dom, '#productTitle') as title,
  dom_first_slim_html(dom, 'img:expr(width > 400)') as img
from load_and_select('https://www.amazon.com/dp/B0C1H26C46', 'body');
"

The extracted data:

{
  "llm_extracted_data": {
    "product name": "Apple iPhone 15 Pro Max",
    "price": "$1,199.00",
    "ratings": "4.5 out of 5 stars"
  },
  "url": "https://www.amazon.com/dp/B0C1H26C46",
  "title": "Apple iPhone 15 Pro Max",
  "img": "<img src=\"https://example.com/image.jpg\" />"
}

๐Ÿ‘จโ€๐Ÿ’ป For Experts - Native API

๐ŸŽฎ Browser Control:

val prompts = """
move cursor to the element with id 'title' and click it
scroll to middle
scroll to top
get the text of the element with id 'title'
"""

val eventHandlers = DefaultPageEventHandlers()
eventHandlers.browseEventHandlers.onDocumentActuallyReady.addLast { page, driver ->
    val result = session.instruct(prompts, driver)
}
session.open(url, eventHandlers)

๐Ÿ“ Example: View Kotlin Code

๐Ÿค– RPA Crawling:

val options = session.options(args)
val event = options.eventHandlers.browseEventHandlers
event.onBrowserLaunched.addLast { page, driver ->
    warnUpBrowser(page, driver)
}
event.onWillFetch.addLast { page, driver ->
    waitForReferrer(page, driver)
    waitForPreviousPage(page, driver)
}
event.onWillCheckDocumentState.addLast { page, driver ->
    driver.waitForSelector("body h1[itemprop=name]")
    driver.click(".mask-layer-close-button")
}
session.load(url, options)

๐Ÿ“ Example: View Kotlin Code

๐Ÿ” Complex Data Extraction with X-SQL:

select
    llm_extract(dom, 'product name, price, ratings, score') as llm_extracted_data,
    dom_first_text(dom, '#productTitle') as title,
    dom_first_text(dom, '#bylineInfo') as brand,
    dom_first_text(dom, '#price tr td:matches(^Price) ~ td') as price,
    dom_first_text(dom, '#acrCustomerReviewText') as ratings,
    str_first_float(dom_first_text(dom, '#reviewsMedley .AverageCustomerReviews span:contains(out of)'), 0.0) as score
from load_and_select('https://www.amazon.com/dp/B0C1H26C46  -i 1s -njr 3', 'body');

๐Ÿ“š Example Code:

๐Ÿ“– Advanced Guides

โœจ Features

๐Ÿ•ท๏ธ Web Spider

  • Scalable crawling
  • Browser rendering
  • AJAX data extraction

๐Ÿง  LLM Integration

  • Natural language web content analysis
  • Intuitive content description

๐ŸŽฏ Text-to-Action

  • Simple language commands
  • Intuitive browser control

๐Ÿค– RPA Capabilities

  • Human-like task automation
  • SPA crawling support
  • Advanced workflow automation

๐Ÿ› ๏ธ Developer-Friendly

  • One-line data extraction
  • SQL-like query interface
  • Simple API integration

๐Ÿ“Š X-SQL Power

  • Extended SQL for web data
  • Content mining capabilities
  • Web business intelligence

๐Ÿ›ก๏ธ Bot Protection

  • Advanced stealth techniques
  • IP rotation
  • Privacy context management

โšก Performance

  • Parallel page rendering
  • High-efficiency processing
  • Block-resistant design

๐Ÿ’ฐ Cost-Effective

  • 100,000+ pages/day
  • Minimal hardware requirements
  • Resource-efficient operation

โœ… Quality Assurance

  • Smart retry mechanisms
  • Precise scheduling
  • Complete lifecycle management

๐ŸŒ Scalability

  • Fully distributed architecture
  • Massive-scale capability
  • Enterprise-ready

๐Ÿ“ฆ Storage Options

  • Local File System
  • MongoDB
  • HBase
  • Gora support

๐Ÿ“Š Monitoring

  • Comprehensive logging
  • Detailed metrics
  • Full transparency

๐Ÿค– AI-Powered

  • Automatic field extraction
  • Pattern recognition
  • Accurate data capture

๐Ÿ“ž Contact Us

WeChat QR Code