With increasing amounts of data available on the web and a diverse range of users interested in programmatically accessing that data, web automation must become easier. Automation helps users complete many tedious interactions, such as scraping data, completing forms, or transferring data between websites.
However, writing web automation scripts typically requires an expert programmer because the writer must be able to reverse engineer the target webpage. We have built a record and replay tool, Ringer, that makes web automation accessible to non-coders. Ringer takes a user demonstration as input and creates a script that interacts with the page as a user would.
This approach makes Ringer scripts more robust to webpage changes because user-facing interfaces remain relatively stable compared to the underlying webpage implementations. We evaluated our approach on benchmarks recorded on real webpages and found that it replayed 4x more benchmarks than a state-of-the-art replay tool.
Thu 3 NovDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
15:40 - 17:20 | |||
15:40 25mTalk | Computing Repair Alternatives for Malformed Programs using Constraint Attribute Grammars OOPSLA Friedrich Steimann Fernuniversität, Jörg Hagemann Fernuniversität in Hagen, Bastian Ulke Fernuniversität in Hagen DOI Media Attached | ||
16:05 25mTalk | Probabilistic Model for Code with Decision Trees OOPSLA DOI | ||
16:30 25mTalk | Ringer: Web Automation by Demonstration OOPSLA Shaon Barman UC Berkeley, Sarah E. Chasins University of California, Berkeley, Rastislav Bodík University of Washington, USA, Sumit Gulwani Microsoft Research DOI Media Attached | ||
16:55 25mTalk | Scalable Verification of Border Gateway Protocol Configurations with an SMT Solver OOPSLA Konstantin Weitz University of Washington, Doug Woos University of Washington, Emina Torlak University of Washington, Michael D. Ernst University of Washington, Arvind Krishnamurthy University of Washington, Zachary Tatlock University of Washington, Seattle DOI Media Attached |