An All-in-one library, safe for hackathon consumption.
You can perform every task using a single library.
Table of Contents
hackr currently supports the following features:
- Generate random names
- Generate random address
- Generate random dates
- Generate random digits
- Generate random characters
- Generate QRCode
- Scrape any webpage
- Send web requests (GET, POST, PUT)
- Parse data in JSON
- Send Emails
hackr officially supports Python 2.7 currently.
pip install hackr
Generate Random names
>>> import hackr
>>> a = hackr.generator.names(5)
>>> print a
[u'Mr. Thomas Wolf MD', u'Valerie Turner', u'Maria Knight', u'Raymond Shelton', u'Erica Glenn']
Generate Random dates
>>> import hackr
>>> a= hackr.generator.dates(5,1995,2017)
>>> print a
['1998-08-17 00:00:00', '2007-03-25 00:00:00', '2003-01-27 00:00:00', '2014-10-13 00:00:00', '1995-02-10 00:00:00']
Generate Random json data
>>> import hackr
>>> a = hackr.object_generator.generate_json(4, name='names', address='address')
>>> print a
'[{"name": "Jeffery Russell", "address": "USNV Bradley\\nFPO AA 49483-3369"}, {"name": "Caitlin Wong", "address": "4622 Richard Summit Apt. 325\\nHollow
aystad, OH 88464"}, {"name": "Adrian Pugh", "address": "977 Hill Meadows Suite 944\\nVictoriaton, PR 58653-2191"}, {"name": "Christopher Schaefer", "add
ress": "62215 Charles Cape Apt. 039\\nHaleymouth, ND 82518-8938"}]'
Generate QRCode
>>> import hackr
>>> # default save to current path
>>> img = hackr.image.qrcode("https://github.com/pytorn/hackr")
>>> # or manually assign dest path
>>> img = hackr.image.qrcode("https://github.com/pytorn/hackr", dest_path="/tmp/hackr_qrcode.png")
Scrape a webpage
>>> import hackr
>>>#To get the response as JSON(if the url returns a JSON response, otherwise an exception is returned)
>>> json_response = hackr.web.scrape("https://api.github.com/users/ashwini0529", type="json")
>>>#To get the response as XML
>>> xml_response = hackr.web.scrape("https://api.github.com/users/ashwini0529", type="xml")
>>> #To scrape all images of a webpage(although the function will have limitations in case of dynamically generated content)
>>> scrape("https://github.com/", type="json", images=True) # All the images from the webpage will be saved in a folder named images inside a folder named as the URL.
Make Web Requests
>>> import hackr
>>> #If you want the response as a string
>>> a= hackr.web.request("http://httpbin.org/post", method="post", params={'a':'b'})
>>> If you want the response as JSON
>>> a= hackr.web.request("http://httpbin.org/post", method="post", params={'a':'b'}, type="JSON")
Send Emails
>>> import hackr
>>> #Enter your GMAIL email address and password in the parameters email, and password.
>>> hackr.actions.email("Hey there", email="foo@bar.com", password="foobar", to="bar@foo.com", subject="Foo Bar")
IP Tools
>>> import hackr
>>> hackr.iptools.getLiveIP()
'***.***.***.***'
>>> hackr.iptools.getPrivateIP()
'192.168.1.8'
Cryptography
>>> import hackr
>>> e = hackr.crypto.Encrypt('hackr')
>>> e.sha1()
'0cbb7cc60b77fe81355c3b116837a5e50b747311'
>>> d = hackr.crypto.Decrypt('0cbb7cc60b77fe81355c3b116837a5e50b747311','dict.txt')
>>> d.sha1()
hackr
Cryptocurrencies
>>> import hackr
>>> hackr.crypto.Currency(1).convert('btc','eth')
32.16
>>> c = hackr.crypto.Currency(1)
>>> c.convert('btc','eth')
32.16
>>> c.coin = 'btc'
>>> c.to('eth')
32.16
>>> c.value = 2
>>> c.to('eth')
64.32
- Fork the repository
- Find an issue or create one
- Create a branch(we prefer to name it patch)
- Inform everyone that you're working on the issue
- Send a pull request with proper explanation of what you did
- Wait for getting it reviewed.
- We'd be glad to merge your PR
Our Awesome Contributors
Made with ♥ by: PyTorn