All Projects → yuis-ice → jseval

yuis-ice / jseval

Licence: BSD-3-Clause License
Evaluate JavaScript on a URL through headless Chrome browser.

Programming Languages

javascript
184084 projects - #8 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to jseval

browser-pool
A Node.js library to easily manage and rotate a pool of web browsers, using any of the popular browser automation libraries like Puppeteer, Playwright, or SecretAgent.
Stars: ✭ 71 (+273.68%)
Mutual labels:  browser-automation, headless-browsers
OLX Scraper
📻 An OLX Scraper using Scrapy + MongoDB. It Scrapes recent ads posted regarding requested product and dumps to NOSQL MONGODB.
Stars: ✭ 15 (-21.05%)
Mutual labels:  scrapping, web-crawling
eval-estree-expression
Safely evaluate JavaScript (estree) expressions, sync and async.
Stars: ✭ 22 (+15.79%)
Mutual labels:  evaluator, eval
JAW
JAW: A Graph-based Security Analysis Framework for JavaScript and Client-side CSRF
Stars: ✭ 26 (+36.84%)
Mutual labels:  web-crawling
Waterfox
The official Waterfox 💧 source code repository
Stars: ✭ 2,444 (+12763.16%)
Mutual labels:  web-browser
floaty
A minimalist, float on top web browser for macOS
Stars: ✭ 26 (+36.84%)
Mutual labels:  web-browser
html2rss-web
🕸 Generates and delivers RSS feeds via HTTP. Create your own feeds or get started quickly with the included configs.
Stars: ✭ 36 (+89.47%)
Mutual labels:  website-scraper
MyTelegramOrgRoBot
telegram.dog/usetgxbot
Stars: ✭ 94 (+394.74%)
Mutual labels:  scrapper
flink-crawler
Continuous scalable web crawler built on top of Flink and crawler-commons
Stars: ✭ 48 (+152.63%)
Mutual labels:  web-crawling
bcx-expression-evaluator
Safely evaluate JavaScript-like expression in given context.
Stars: ✭ 19 (+0%)
Mutual labels:  eval
pyscrapper
📷 web scrapping in python: multiple libraries -requests, beautifulsoup, mechanize, selenium
Stars: ✭ 50 (+163.16%)
Mutual labels:  scrapping
Crusta
Fast, modern and minimal desktop web browser with rich features
Stars: ✭ 53 (+178.95%)
Mutual labels:  web-browser
deobfuscator
Online Javascript Deobfuscator Tool
Stars: ✭ 46 (+142.11%)
Mutual labels:  eval
APSoft-Web-Scanner-v2
Powerful dork searcher and vulnerability scanner for windows platform
Stars: ✭ 96 (+405.26%)
Mutual labels:  scrapper
cliar
Create modular Python CLIs with type annotations and inheritance
Stars: ✭ 47 (+147.37%)
Mutual labels:  commandline-interface
go-http-file-server
Simple command line based HTTP file server to share local file system
Stars: ✭ 90 (+373.68%)
Mutual labels:  cmdline
sweb
Android Simple Web Browser
Stars: ✭ 30 (+57.89%)
Mutual labels:  web-browser
node-warc
Parse And Create Web ARChive (WARC) files with node.js
Stars: ✭ 69 (+263.16%)
Mutual labels:  pupeteer
lispy
Learning with Peter Norvig's lis.py interpreter
Stars: ✭ 133 (+600%)
Mutual labels:  evaluator
ATS-blockchain
⛓️ Blockchain + Smart contracts from scratch
Stars: ✭ 18 (-5.26%)
Mutual labels:  commandline-interface

jseval

Evaluate JavaScript on a URL through headless Chrome browser.

build

docker build -t jseval -f jseval.dockerfile .

usage

docker run --rm jseval --help

quick start

Run:

$ docker run --rm jseval --url "https://www.tradingview.com/" --evaluate 'JSON.stringify([document.location.href, document.title])' --headless --output

stdout would be like:

["https://www.tradingview.com/","Free Stock Charts, Stock Quotes and Trade Ideas — TradingView"]

examples

  • for complicated JS
docker run jseval \
	--url "https://www.tradingview.com/ideas/bitcoin/" \
	--evaluate "$(cat <<- EOT
		JSON.stringify(
			Array.from(
				document.querySelectorAll("div.tv-feed-layout__card-item[data-widget-type=\"idea\"] > div > div > a")
			)
			.map(a => a.href)
			.concat(document.location.href)
		)
	EOT
	)" \
	--headless \
	--output

help

Usage: jseval [options]

Options:
  --url <url>          set url
  --sleep <seconds>    set sleep (default: 0)
  --evaluate <script>  set script to evaluate
  --output             output to stdout
  --file <file>        output to file (default: "")     
  --headless           enables headless (default: false)
  --log                enables log
  -h, --help           display help for command

todables
  just eval js, not console.log as a default
    should be like: docker run --rm jseval --url "https://www.tradingview.com/" --evaluate 'console.log(JSON.stringify([document.location.href, document.title]))' --headless --output
  should be able to set cookies 
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].