Unformatted text preview:

SHIL Simulated Human Interaction Language Moses Vaughan mjv2123 Chun Yai Wang cw2244 Binh Vo bdv2112 Ian Vo idv2101 SHIL September 23 2008 SHIL is a simple strongly typed object oriented imperative language for simulating human interaction with web sites Introduction SHIL is a language used primarily for developing HTML based automated bots It provides the developer with an abstraction for automating interaction with both web sites and users From the server s perspective SHIL can be used to simulate user interactions which is useful for many applications ranging from creating spiders to website test scripts From the user s perspective SHIL can be used to implement custom user interfaces In conjunction with automated server interaction this potentially can be used to alter existing interfaces for websites or provide interfaces to additional functionality built on top of existing website functionality Motivation Many automated browsing tasks are written now in various languages primarily PERL and Python For example many services such as web search engines need to crawl across existing pages on the internet or independent users often wish to automate data collection over various sites SHIL intends to provide a language designed specifically for this task which will reduce the complexity of writing applications of this nature Possible Applications Providing different user customized interfaces to various web services Aggregating data from web visible databases such as craigslist Automated bidding utilities for auction web sites Writing test scripts for web interfaces Crawling web pages Automated user browsing over a large set of pages for the purpose of finding malicious sites Sample Code Sample Program Provides a different interface to the user for Google searching HTMLcode newInterface ReadFile documents newInterface html DisplayHTMLcode creates local proxy displays new interface in user browser Intercepts next user http request and returns to program HTTPRequest userResponse DisplayHTMLCode newInterface references associative arrays HTTP requests will be associative arrays String query userResponse q HTTPRequest googleQuery www google com search googleQuery q query HTMLcode googleResult Send googleQuery get HTMLcode newResult ReadFile documents newResultBegin html foreach item in googleResult body ol 2 newResult newResult li a item a content a item content li end newResult newResult ReadFile documents newResultEnd html DisplayHTMLCode newResult This code shows how we might write a simple program that allows a user to provide his own customized interface to Google search We begin by reading his own html search page and displaying it to him and behind the scenes the interpreter will run a local proxy server to intercept the next HTTP request he makes from that browser providing us with a way to query user interaction from custom interfaces We then send this query to Google parse the results and display to the user another alternate search result pages of his own design


View Full Document

Columbia COMS W4115 - Simulated Human Interaction Language

Documents in this Course
YOLT

YOLT

13 pages

Lattakia

Lattakia

15 pages

EasyQL

EasyQL

14 pages

Photogram

Photogram

163 pages

Espresso

Espresso

27 pages

NumLang

NumLang

6 pages

EMPATH

EMPATH

14 pages

La Mesa

La Mesa

9 pages

JTemplate

JTemplate

238 pages

MATVEC

MATVEC

4 pages

TONEDEF

TONEDEF

14 pages

SASSi

SASSi

16 pages

JTemplate

JTemplate

39 pages

BATS

BATS

10 pages

Synapse

Synapse

11 pages

c.def

c.def

116 pages

TweaXML

TweaXML

108 pages

Load more
Loading Unlocking...
Login

Join to view Simulated Human Interaction Language and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Simulated Human Interaction Language and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?