diff options
-rw-r--r-- | battering/packages/osint.scm | 40 |
1 files changed, 37 insertions, 3 deletions
diff --git a/battering/packages/osint.scm b/battering/packages/osint.scm index d14665c..91868bd 100644 --- a/battering/packages/osint.scm +++ b/battering/packages/osint.scm @@ -3,11 +3,14 @@ #:use-module (guix build-system pyproject) #:use-module (guix download) #:use-module (guix packages) - #:use-module ((guix licenses) - #:prefix license:) + #:use-module (guix gexp) #:use-module (gnu packages python-build) #:use-module (gnu packages python-xyz) - #:use-module (gnu packages python-web)) + #:use-module (gnu packages python-web) + #:use-module (gnu packages python-crypto) + #:use-module (gnu packages xml) + #:use-module ((guix licenses) + #:prefix license:)) (define-public python-linkedin-api (package @@ -30,3 +33,34 @@ (synopsis "LinkedIn API for Python") (description "@code{LinkedIn} API for Python.") (license license:expat))) + +(define-public python-twikit + (package + (name "python-twikit") + (version "2.2.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "twikit" version)) + (sha256 + (base32 "0apmz8iw2pv3cicignd41sgr5zy2bbyj9c76j5hw43h7rhgj5jgs")))) + (build-system pyproject-build-system) + (native-inputs (list python-setuptools + python-wheel)) + (propagated-inputs (list python-beautifulsoup4 python-filetype + python-httpx python-lxml python-pyotp + python-requests)) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-httpx + (lambda _ + ;; TODO -- remove this hacky fix once httpx is + ;; version-bumped in Guix. + (substitute* "twikit/client/client.py" + (("AsyncClient\\(proxy=proxy, ") "AsyncClient("))))))) + (home-page "https://github.com/d60/twikit") + (synopsis "Twitter API wrapper for python with **no API key required**.") + (description + "Twitter API wrapper for python with **no API key required**.") + (license license:expat))) |