#! /usr/bin/env python """ bitdotly - Convert URLs to bit.ly format Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. Please note that this is not the suggested way to use the bit.ly service. If your application needs to shorten many URLs, sign up for the bit.ly REST API. For more information visit http://bit.ly/apidocs . """ import urllib import re import sys def bitdotly_url(url): """ Shorten your URL using bit.ly """ regexp=re.compile(r'(\"shortened-url)\"\s+value\=(.*)\/\>', re.IGNORECASE) submit_url = 'http://bit.ly/' + urllib.quote(url) # No exception handling data=urllib.urlopen(submit_url).read() if data: items = regexp.findall(data) if items: short_url = items[0][1].replace('"', '').strip() return short_url if __name__ == "__main__": print bitdotly_url(sys.argv[1])