<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>UNIXy &#187; Lynx</title>
	<atom:link href="http://blog.unixy.net/tag/lynx/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.unixy.net</link>
	<description>Fully Managed Dedicated Servers</description>
	<lastBuildDate>Fri, 03 Sep 2010 04:07:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Script To Automate Browsing Actions Using Lynx</title>
		<link>http://blog.unixy.net/2009/06/script-to-automate-browsing-actions-using-lynx/</link>
		<comments>http://blog.unixy.net/2009/06/script-to-automate-browsing-actions-using-lynx/#comments</comments>
		<pubDate>Sat, 20 Jun 2009 00:47:52 +0000</pubDate>
		<dc:creator>UNIXy</dc:creator>
				<category><![CDATA[Crash Course]]></category>
		<category><![CDATA[automate]]></category>
		<category><![CDATA[automate Links]]></category>
		<category><![CDATA[automate Lynx]]></category>
		<category><![CDATA[browser actions]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[Lynx]]></category>

		<guid isPermaLink="false">http://blog.unixy.net/?p=14</guid>
		<description><![CDATA[Download article as PDF There are times when one needs to automate some of the mundate tasks associated with browsing a certain Web page or accomplishing a certain interactive task online. If the task is repetitive, then there has to be a way to automate it using a computer! Browser tasks are no exception. In [...]]]></description>
			<content:encoded><![CDATA[<div class="pdf24Plugin-cp"> <form name="pdf24Form1" method="post" target="pdf24PopWin" action="http://doc2pdf.pdf24.org/wordpress.php"><input type="hidden" name="blogCharset" value="VVRGLTg=" /><input type="hidden" name="blogPosts" value="MQ==" /><input type="hidden" name="blogUrl" value="aHR0cDovL2Jsb2cudW5peHkubmV0" /><input type="hidden" name="blogName" value="VU5JWHk=" /><input type="hidden" name="blogValueEncoding" value="base64" /><input type="hidden" name="postTitle_0" value="U2NyaXB0IFRvIEF1dG9tYXRlIEJyb3dzaW5nIEFjdGlvbnMgVXNpbmcgTHlueA==" /><input type="hidden" name="postLink_0" value="aHR0cDovL2Jsb2cudW5peHkubmV0LzIwMDkvMDYvc2NyaXB0LXRvLWF1dG9tYXRlLWJyb3dzaW5nLWFjdGlvbnMtdXNpbmctbHlueC8=" /><input type="hidden" name="postAuthor_0" value="VU5JWHk=" /><input type="hidden" name="postDateTime_0" value="SnVuZSAyMCwgMjAwOSAxMjo0NyBhbQ==" /><input type="hidden" name="postContent_0" value="PGRpdiBjbGFzcz0idHdlZXRtZW1lX2J1dHRvbiIgc3R5bGU9ImZsb2F0OiByaWdodDsgbWFyZ2luLWxlZnQ6IDEwcHg7Ij4KCQkJPGEgaHJlZj0iaHR0cDovL2FwaS50d2VldG1lbWUuY29tL3NoYXJlP3VybD1odHRwJTNBJTJGJTJGYmxvZy51bml4eS5uZXQlMkYyMDA5JTJGMDYlMkZzY3JpcHQtdG8tYXV0b21hdGUtYnJvd3NpbmctYWN0aW9ucy11c2luZy1seW54JTJGIj48YnIgLz4KCQkJCTxpbWcgc3JjPSJodHRwOi8vYXBpLnR3ZWV0bWVtZS5jb20vaW1hZ2VidXR0b24uZ2lmP3VybD1odHRwJTNBJTJGJTJGYmxvZy51bml4eS5uZXQlMkYyMDA5JTJGMDYlMkZzY3JpcHQtdG8tYXV0b21hdGUtYnJvd3NpbmctYWN0aW9ucy11c2luZy1seW54JTJGJmFtcDtzdHlsZT1ub3JtYWwiIGhlaWdodD0iNjEiIHdpZHRoPSI1MCIgLz48YnIgLz4KCQkJPC9hPgoJCTwvZGl2Pgo8cD5UaGVyZSBhcmUgdGltZXMgd2hlbiBvbmUgbmVlZHMgdG8gYXV0b21hdGUgc29tZSBvZiB0aGUgbXVuZGF0ZSB0YXNrcyBhc3NvY2lhdGVkIHdpdGggYnJvd3NpbmcgYSBjZXJ0YWluIFdlYiBwYWdlIG9yIGFjY29tcGxpc2hpbmcgYSBjZXJ0YWluIGludGVyYWN0aXZlIHRhc2sgb25saW5lLiBJZiB0aGUgdGFzayBpcyByZXBldGl0aXZlLCB0aGVuIHRoZXJlIGhhcyB0byBiZSBhIHdheSB0byBhdXRvbWF0ZSBpdCB1c2luZyBhIGNvbXB1dGVyISBCcm93c2VyIHRhc2tzIGFyZSBubyBleGNlcHRpb24uIEluIHRoaXMgYnJpZWYgZ3VpZGUgSSYjODIxNzttIGdvaW5nIHRvIHNob3cgeW91IGhvdyB0byBhdXRvbWF0ZSBzb21lIGJyb3dzaW5nIGFjdGlvbnMgb24gYSB3ZWJzaXRlIGNhbGxlZCA8YSB0aXRsZT0iRnVsbHkgTWFuYWdlZCBWaXJ0dWFsIFByaXZhdGUgU2VydmVycyIgaHJlZj0iaHR0cDovL3d3dy52cHNsdXguY29tIiB0YXJnZXQ9Il9ibGFuayI+aHR0cDovL3d3dy52cHNsdXguY29tPC9hPi4gTW9yZSBzcGVjaWZpY2FsbHksIEkmIzgyMTc7bSBnb2luZyB0byBzaG93IHlvdSBob3cgdG8gYXV0b21hdGUgYnJvd3NpbmcgYSBwYWdlIGNhbGxlZCAmIzgyMjA7ZXhwbGFpbmVkLiYjODIyMTsgS2VlcCBpbiBtaW5kIHRoYXQgdGhlIGFjdGlvbiBjb3VsZCBiZSBhbnl0aGluZyBmcm9tIGF1dGhlbnRpY2F0aW5nIHRvIHVwbG9hZGluZyBhIGZpbGUhPC9wPgo8cD5MeW54IGlzIGEgdGV4dCBicm93c2VyIHRoYXQgcnVucyBmcm9tIHRoZSBjb21tYW5kIGxpbmUsIHdoaWNoIGlzIGFsc28ga25vd24gYXMgJiM4MjIwO3NoZWxsLiYjODIyMTsgSXQgcnVucyBvbiBtb3N0IG9wZXJhdGluZyBzeXN0ZW1zIG5vdGFibHkgTGludXguIEl0IGNvbWVzIHdpdGggYSB2YWx1YWJsZSBmZWF0dXJlIHRoYXQgd2lsbCBoZWxwIHVzIGF1dG9tYXRlIGFjdGlvbnMgdGhhdCBhcmUgbm9ybWFsbHkgcGVyZm9ybWVkIGludGVyYWN0aXZlbHkgdmlhIGEgYnJvd3NlciAoRXg6IEZpcmVmb3gsIFNhZmFyaSwgb3IgSW50ZXJuZXQgRXhwbG9yZXIpLiBUaGUgdHdvIG1vc3QgaW1wb3J0YW50IGZlYXR1cmVzIGluIG91ciBjYXNlIGFyZSBjb21tYW5kIGxvZ2dpbmcgYW5kIGNvbW1hbmQgc2NyaXB0aW5nLiBQZXIgdGhlIG1hbnVhbCBvZiBMeW54OjwvcD4KPGJsb2NrcXVvdGU+PHA+LWNtZF9sb2c9RklMRU5BTUU8YnIgLz4Kd3JpdGUga2V5c3Ryb2tlIGNvbW1hbmRzIGFuZCByZWxhdGVkIGluZm9ybWF0aW9uIHRvIHRoZSBzcGVjaWZpZWQgZmlsZS48L3A+CjxwPi1jbWRfc2NyaXB0PUZJTEVOQU1FPGJyIC8+CnJlYWQga2V5c3Ryb2tlIGNvbW1hbmRzIGZyb20gdGhlIHNwZWNpZmllZCBmaWxlLsKgIFlvdSBjYW4gdXNlIHRoZSBkYXRhIHdyaXR0ZW4gdXNpbmcgdGhlwqAgLWNtZF9sb2fCoCBvcHRpb24uPC9wPjwvYmxvY2txdW90ZT4KPHA+TGV0JiM4MjE3O3MgcmVjb3JkIG91ciBhY3Rpb25zIGJ5IGJyb3dzaW5nIDxhIHRpdGxlPSJGdWxseSBNYW5hZ2VkIFZpcnR1YWwgUHJpdmF0ZSBTZXJ2ZXJzIiBocmVmPSJodHRwOi8vd3d3LnZwc2x1eC5jb20iIHRhcmdldD0iX2JsYW5rIj5odHRwOi8vd3d3LnZwc2x1eC5jb208L2E+IHVzaW5nIEx5bnguIEZyb20gdGhlIGNvbW1hbmQgbGluZSBvciBzaGVsbCwgbGF1bmNoIEx5bnggd2l0aCB0aGUgZm9sbG93aW5nIGFyZ3VtZW50cyBhbmQgZmxhZ3M6PC9wPgo8YmxvY2txdW90ZT48cD5seW54IC1jbWRfbG9nPS90bXAvd3d3LnZwc2x1eC5jb20gaHR0cDovL3d3dy52cHNsdXguY29tPC9wPjwvYmxvY2txdW90ZT4KPHA+VGhlIGFib3ZlIGNvbW1hbmQgd2lsbCBub3Qgb25seSB0YWtlIG1lIHRvIHRoZSBXZWJzaXRlIGluIHF1ZXN0aW9uIGJ1dCBhbHNvIHJlY29yZCBldmVyeSBrZXlzdHJva2UgYW5kIGFjdGlvbiBJIHBlcmZvcm0gYW5kIHNhdmUgaXQgaW5zaWRlIHRoZSBmaWxlIC90bXAvd3d3LnZwc2x1eC5jb20uIEl0IGlzIHNvIHNpbXBsZSBhbmQgc28gcG93ZXJmdWwgYXQgdGhlIHNhbWUgdGltZS4gT25jZSBJJiM4MjE3O20gZG9uZSB3aXRoIG5hdmlnYXRpbmcgdG8gcGFnZSAmIzgyMjA7ZXhwbGFpbmVkJiM4MjIxOyBieSBjbGlja2luZyBvbiB0aGUgJiM4MjIwO1ZQUyBFeHBsYWluZWQmIzgyMjE7IGxvY2F0ZWQgYXQgdGhlIHRvcCBvZiB0aGUgZmlyc3QgcGFnZSAoPGEgdGl0bGU9IldoYXQgZG9lcyBhIHNsaWNlIG9mIHBpenphIGFuZCBWUFMgaGF2ZSBpbiBjb21tb24/IiBocmVmPSJodHRwOi8vd3d3LnZwc2x1eC5jb20vP3BhZ2U9ZXhwbGFpbmVkIiB0YXJnZXQ9Il9ibGFuayI+aHR0cDovL3d3dy52cHNsdXguY29tLz9wYWdlPWV4cGxhaW5lZDwvYT4pLCBJIGhpdCB0aGUgbGV0dGVyICYjODIxNjtxJiM4MjE3OyBvbiBteSBrZXlib2FyZCB0byBleGl0IGZyb20gTHlueC4gSW5zcGVjdCB0aGUgZmlsZSAvdG1wL3d3dy52cHNsdXguY29tIHRvIG1ha2Ugc3VyZSBhbGwgYWN0aW9ucyBoYXZlIGJlZW4gcmVjb3JkZWQuIFlvdSBzaG91bGQgc2VlIHNvbWV0aGluZyBzaW1pbGFyIHRvIHRoaXMgZGVwZW5kaW5nIG9uIHRoZSBhY3Rpb25zIHlvdSBoYXZlIHBlcmZvcm1lZCAoSSBjdXQgZG93biBxdWl0ZSBhIGJpdCB0byBrZWVwIGl0IHNob3J0KTo8L3A+CjxibG9ja3F1b3RlPjxwPiMgQ29tbWFuZCBsb2dmaWxlIGNyZWF0ZWQgYnkgTHlueCAyLjguNnJlbC40ICgxNSBOb3YgMjAwNik8YnIgLz4KIyBBcmcwID0gbHlueDxiciAvPgojIEFyZzEgPSAtY21kX2xvZz0vdG1wL3Zwc2x1eC5jb208YnIgLz4KIyBBcmcyID0gaHR0cDovL3Zwc2x1eC5jb208YnIgLz4Ka2V5IERvd24gQXJyb3c8YnIgLz4Ka2V5IERvd24gQXJyb3c8YnIgLz4Ka2V5IERvd24gQXJyb3c8YnIgLz4Ka2V5IERvd24gQXJyb3c8YnIgLz4Ka2V5IERvd24gQXJyb3c8YnIgLz4Ka2V5IF5KPGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PGJyIC8+CmtleSBEb3duIEFycm93PC9wPjwvYmxvY2txdW90ZT4KPHA+VGhlIGhhcmQgcGFydCBpcyBkb25lISBBbGwgd2UgbmVlZCB0byBkbyBub3cgaXMgY3JlYXRlIGEgc21hbGwgc2NyaXB0IHRoYXQgd2lsbCB1c2Ugb3VyIHd3dy52cHNsdXguY29tIGZpbGUgYXMgdGhlIHNvdXJjZSBvciBzY3JpcHQuIFlvdSBjb3VsZCBjcmVhdGUgYSBzbWFsbCBCYXNoIHNjcmlwdCBjYWxsZWQgYnJvd3NlV2ViLnNoIHdpdGggdGhlIGZvbGxvd2luZyBjb250ZW50OjwvcD4KPGJsb2NrcXVvdGU+PHA+IyEvYmluL2Jhc2g8L3A+CjxwPmx5bnggLWNtZF9zY3JpcHQ9L3RtcC93d3cudnBzbHV4LmNvbSBodHRwOi8vd3d3LnZwc2x1eC5jb20vPC9wPjwvYmxvY2txdW90ZT4KPHA+QW4gZXh0cmEgc3RlcCB3b3VsZCB0byBjcmVhdGUgYSBjcm9udGFiIGVudHJ5IHRvIHJ1biB0aGUgYWJvdmUgc2NyaXB0IHNheSBldmVyeSBNb25kYXkgbW9ybmluZyBhdCA0YW06PC9wPgo8cD5jcm9udGFiIC1lPC9wPgo8cD4wIDQgKiAqIDEgL2hvbWUvdXNlci9icm93c2VXZWIuc2g8L3A+CjxwPlRoYXQmIzgyMTc7cyBhbGwgZm9sa3MuIEkgaG9wZSB0aGlzIGlzIHVzZWZ1bC48L3A+Cg==" /></form> <div class="pdf24Plugin-cp-link"> 	<a href="http://en.pdf24.org" target="_blank" title="PDF"><img src="http://blog.unixy.net/wp-content/plugins/pdf24-post-to-pdf/img/sheep_16x16.gif" alt="PDF" border="0" /></a> 	<a href="javascript:void(document.pdf24Form1.submit());" onclick="var pdf24Win = window.open('about:blank', 'pdf24PopWin', 'resizable=yes,scrollbars=yes,width=400,height=200,top=0,left=0'); pdf24Win.focus(); return true;">Download article as PDF</a> </div> </div><div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.unixy.net%2F2009%2F06%2Fscript-to-automate-browsing-actions-using-lynx%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.unixy.net%2F2009%2F06%2Fscript-to-automate-browsing-actions-using-lynx%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>There are times when one needs to automate some of the mundate tasks associated with browsing a certain Web page or accomplishing a certain interactive task online. If the task is repetitive, then there has to be a way to automate it using a computer! Browser tasks are no exception. In this brief guide I&#8217;m going to show you how to automate some browsing actions on a website called <a title="Fully Managed Virtual Private Servers" href="http://www.vpslux.com" target="_blank">http://www.vpslux.com</a>. More specifically, I&#8217;m going to show you how to automate browsing a page called &#8220;explained.&#8221; Keep in mind that the action could be anything from authenticating to uploading a file!</p>
<p>Lynx is a text browser that runs from the command line, which is also known as &#8220;shell.&#8221; It runs on most operating systems notably Linux. It comes with a valuable feature that will help us automate actions that are normally performed interactively via a browser (Ex: Firefox, Safari, or Internet Explorer). The two most important features in our case are command logging and command scripting. Per the manual of Lynx:</p>
<blockquote><p>-cmd_log=FILENAME<br />
write keystroke commands and related information to the specified file.</p>
<p>-cmd_script=FILENAME<br />
read keystroke commands from the specified file.  You can use the data written using the  -cmd_log  option.</p></blockquote>
<p>Let&#8217;s record our actions by browsing <a title="Fully Managed Virtual Private Servers" href="http://www.vpslux.com" target="_blank">http://www.vpslux.com</a> using Lynx. From the command line or shell, launch Lynx with the following arguments and flags:</p>
<blockquote><p>lynx -cmd_log=/tmp/www.vpslux.com http://www.vpslux.com</p></blockquote>
<p>The above command will not only take me to the Website in question but also record every keystroke and action I perform and save it inside the file /tmp/www.vpslux.com. It is so simple and so powerful at the same time. Once I&#8217;m done with navigating to page &#8220;explained&#8221; by clicking on the &#8220;VPS Explained&#8221; located at the top of the first page (<a title="What does a slice of pizza and VPS have in common?" href="http://www.vpslux.com/?page=explained" target="_blank">http://www.vpslux.com/?page=explained</a>), I hit the letter &#8216;q&#8217; on my keyboard to exit from Lynx. Inspect the file /tmp/www.vpslux.com to make sure all actions have been recorded. You should see something similar to this depending on the actions you have performed (I cut down quite a bit to keep it short):</p>
<blockquote><p># Command logfile created by Lynx 2.8.6rel.4 (15 Nov 2006)<br />
# Arg0 = lynx<br />
# Arg1 = -cmd_log=/tmp/vpslux.com<br />
# Arg2 = http://vpslux.com<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key ^J<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow<br />
key Down Arrow</p></blockquote>
<p>The hard part is done! All we need to do now is create a small script that will use our www.vpslux.com file as the source or script. You could create a small Bash script called browseWeb.sh with the following content:</p>
<blockquote><p>#!/bin/bash</p>
<p>lynx -cmd_script=/tmp/www.vpslux.com http://www.vpslux.com/</p></blockquote>
<p>An extra step would to create a crontab entry to run the above script say every Monday morning at 4am:</p>
<p>crontab -e</p>
<p>0 4 * * 1 /home/user/browseWeb.sh</p>
<p>That&#8217;s all folks. I hope this is useful.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.unixy.net/2009/06/script-to-automate-browsing-actions-using-lynx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
