Skip to content

Traadh/cloudflareun

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 

Repository files navigation

CloudflareUn

Help Pharo pass through to Cloudflare guarded website.
Background discussed at blog.openinworld.com

Responsibilities

I gather the magic keys required to enter a Cloudflare guarded site. Give me a URL to knock on, and I'll return a factory for generating ZnClients configured with the magic keys.

Collaborators

cloudscraper is a nodejs library. Its where the magic happens to obtain the Cloudflare keys.
OSProcess is used to shell out to nodejs.

Class-side Public API and Key Messages

knockURL: aHostUrlString provides the url used for initial access.

Instance-side Public API and Key Messages

client returns a new ZnClient configured with the magic keys.

Usage

|client response| 
client := (CloudflareUn knockUrl: 'http://bittrex.com') client.
client url: 'https://bittrex.com/home/markets'. 
(response := client get) inspect. 
"Note: Cloudflare enforces a five second delay, so unless you fork, expect UI to block for 5 to 10 seconds"

Installation

On Ubuntu 16.04...

$ sudo apt-get update  
$ sudo apt-get install nodejs  
$ sudo apt-get install npm  
$ npm install cloudscraper  

In Pharo 6 or 7...

  1. Start Iceberg, click <Clone repository> and fill in the following details, then click <Create repository>
  Remote URL = [email protected]:Traadh/cloudflareun.git
  Local directory = (use default)
  Code subdirectory = src
  1. In Iceberg main panel, click on "clourdflareun", then its [pacakges] tab. You'll see "CloudflareUn" status "Not loaded". Right-click on it and select <Load package>

  2. Since there is not yet a Baseline, in Playground evaluate...
    CloudflareUn installOSProcess

  3. Verify requirements, in Playground evaluate...
    CloudflareUn checkInstallNodeJs

About

Unlock a website's Cloudflare guard

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published