Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python
- #####################################################
- # #
- # Pastebin Tools #
- # #
- # Utility to get content of a pastebin link #
- # #
- #####################################################
- __author__ = 'irenicus09'
- __date__ = '17/10/2012'
- __version__ = '0.1'
- import urllib2, sys
- def main():
- if exist('-g') and (len(sys.argv) >= 3):
- linkID = parseLink(find('-g'))
- data = getRaw(linkID)
- if (exist('-s')):
- save(data,find('-s'))
- else:
- print data
- sys.exit(0)
- elif (exist('-h')):
- help()
- sys.exit(0)
- else:
- help()
- sys.exit(1)
- def getRaw(id):
- link = 'http://pastebin.com/raw.php?i=%s' % id
- ua = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:x.x.x) Gecko/20041107 Firefox/x.x'
- req = urllib2.Request(link)
- req.add_header('User-Agent', ua)
- try:
- html = urllib2.urlopen(req).read()
- except (urllib2.HTTPError):
- print '[-] 404 redirected. Damn n00b waste my time! :['
- sys.exit(1)
- return html
- def parseLink(link):
- if 'pastebin.com' not in link:
- print "[-] URL doesn't belong to pastebin smart boy! ;)"
- sys.exit(1)
- if 'http://' in link:
- return link.split('/')[3]
- else:
- return link.split('/')[1]
- # Prints Help
- def help():
- print """
- =============================================================
- # Pastebin Tools - Coded by Irenicus09 #
- =============================================================
- Usage: ./pastebintools.py -g [url] [options]
- Note: Default mode dumps the content of a link to stdout.
- [ -h ] Prints this help.
- [ -g ] Get raw paste from a pastebin link.
- [ -s ] Save to specified filename
- """
- # Saving Data
- def save(data, filename):
- try:
- handle = open(filename, 'wb')
- handle.writelines(data)
- handle.close()
- print '[+] Saved to %s' % filename
- except Exception:
- print "[-] Something went wrong while saving! :("
- # s3my0n's argument parsers
- def find(flag):
- try:
- a = sys.argv[sys.argv.index(flag)+1]
- except (IndexError, ValueError):
- return None
- else:
- return a
- def exist(flag):
- if flag in sys.argv[1:]:
- return True
- else:
- return False
- if __name__ == '__main__':
- try:
- main()
- except Exception:
- print "[-] Oh noes Error occured & it's your fault!"
- sys.exit(1)
Advertisement
Add Comment
Please, Sign In to add comment