Compare commits

..

102 Commits

Author SHA1 Message Date
GabrielPRomero
b52a58dcdd
Merge ef6e3fa1a3 into f0ea440d41 2024-11-21 16:29:07 +01:00
Ayush Bhardwaj
f0ea440d41
Merge pull request #379 from SoumyaOk4-4/patch-2
fix: Replace broken PyPI logo link and add social media logos
2024-06-21 16:51:34 +02:00
Ayush Bhardwaj
8c995f4e00
Merge pull request #380 from hastagAB/dependabot/pip/yts_torrents/urllib3-1.26.19
Bump urllib3 from 1.26.18 to 1.26.19 in /yts_torrents
2024-06-21 16:50:50 +02:00
dependabot[bot]
d8880df87b
Bump urllib3 from 1.26.18 to 1.26.19 in /yts_torrents
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.18 to 1.26.19.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/1.26.19/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.18...1.26.19)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-06-18 01:29:01 +00:00
Soumya Chakraborty
e261ff5240
fix: Replace broken PyPI logo link and add social media logos
Replaced the broken PyPI logo link in the README.md file with a working one. Additionally, added social media logos instead of text links at the bottom of the README for a better visual representation.
2024-05-28 20:07:41 +05:30
Ayush Bhardwaj
c4f08d05b5
Merge pull request #367 from hastagAB/dependabot/pip/imageWatermarker/pillow-10.2.0
Bump pillow from 10.0.1 to 10.2.0 in /imageWatermarker
2024-02-14 17:34:41 +01:00
Ayush Bhardwaj
d5ffd8f322
Merge pull request #368 from hastagAB/dependabot/pip/PyRecorder/pillow-10.2.0
Bump pillow from 10.0.1 to 10.2.0 in /PyRecorder
2024-02-14 17:34:28 +01:00
dependabot[bot]
e2158064d3
Bump pillow from 10.0.1 to 10.2.0 in /PyRecorder
Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.0.1 to 10.2.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/10.0.1...10.2.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-22 22:04:56 +00:00
dependabot[bot]
8f87f107ad
Bump pillow from 10.0.1 to 10.2.0 in /imageWatermarker
Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.0.1 to 10.2.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/10.0.1...10.2.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-22 22:02:36 +00:00
Ayush Bhardwaj
47926c3b58
Merge pull request #366 from 4rnv/master
Send bulk mail with individualized attachments
2024-01-18 18:04:52 +01:00
4rnv
3905e8566e Updated README.md 2023-12-03 16:37:20 +05:30
4rnv
b8070b972e Send bulk mail with individualized attachments 2023-12-03 15:50:38 +05:30
Ayush Bhardwaj
fe7579693d
Merge pull request #363 from gaurovgiri/feat/github-review-bot
add github review comment automating script
2023-11-04 17:24:18 +01:00
gaurovgiri
8a6dabbed4 add requirements and update in readme 2023-11-03 10:06:45 +05:45
Gaurav Giri
5a7369e2a4
Merge branch 'hastagAB:master' into feat/github-review-bot 2023-11-03 09:58:16 +05:45
Ayush Bhardwaj
34ef01a585
Merge pull request #354 from hastagAB/dependabot/pip/Tweets_Tool/urllib3-1.26.18
Bump urllib3 from 1.26.17 to 1.26.18 in /Tweets_Tool
2023-11-02 22:12:02 +01:00
Ayush Bhardwaj
6d4d8134ca
Merge pull request #353 from hastagAB/dependabot/pip/url_shortener/urllib3-1.26.18
Bump urllib3 from 1.26.17 to 1.26.18 in /url_shortener
2023-11-02 22:11:50 +01:00
Ayush Bhardwaj
a1490c49b9
Merge pull request #359 from parthasdey2304/master
added the code for pdf password decrypter
2023-11-02 22:11:17 +01:00
Partha Sarathi Dey
e7d1f13a2e added my name in the list of the contributors 2023-10-24 15:31:15 +05:30
Partha Sarathi Dey
51c664311b added the code for pdf password decrypter 2023-10-24 15:27:02 +05:30
gaurovgiri
f1df6af76c update readme 2023-10-24 15:05:34 +05:45
gaurovgiri
f3376db8d3 add github review comment automating script 2023-10-24 15:01:13 +05:45
dependabot[bot]
9dcc29d3bf
Bump urllib3 from 1.26.17 to 1.26.18 in /Tweets_Tool
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 09:10:58 +00:00
dependabot[bot]
7f0041ff94
Bump urllib3 from 1.26.17 to 1.26.18 in /url_shortener
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-24 09:10:15 +00:00
Ayush Bhardwaj
3ad28fbf2f
Merge pull request #352 from hastagAB/dependabot/pip/Github_Bot/urllib3-1.26.18
Bump urllib3 from 1.26.17 to 1.26.18 in /Github_Bot
2023-10-24 11:09:30 +02:00
Ayush Bhardwaj
2f411b9dd2
Merge pull request #351 from hastagAB/dependabot/pip/elastic-snapshot/urllib3-1.26.18
Bump urllib3 from 1.26.17 to 1.26.18 in /elastic-snapshot
2023-10-24 11:09:16 +02:00
dependabot[bot]
2851e6c2aa
Bump urllib3 from 1.26.17 to 1.26.18 in /Github_Bot
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-18 10:33:31 +00:00
dependabot[bot]
d2ddb53748
Bump urllib3 from 1.26.17 to 1.26.18 in /elastic-snapshot
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-18 10:33:30 +00:00
Ayush Bhardwaj
921f634605
Merge pull request #350 from hastagAB/dependabot/pip/yts_torrents/urllib3-1.26.18
Bump urllib3 from 1.26.17 to 1.26.18 in /yts_torrents
2023-10-18 12:32:54 +02:00
Ayush Bhardwaj
21b7e6057a
Merge pull request #344 from malivinayak/master
FileMagic Organizer: A Python Script to Bring Order to File Chaos 🧙‍♂️
2023-10-18 12:28:05 +02:00
dependabot[bot]
842ba58633
Bump urllib3 from 1.26.17 to 1.26.18 in /yts_torrents
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-18 01:26:03 +00:00
Vinayak Mali
b1c3fae2e7
Adding Project Name 2023-10-13 16:07:14 +05:30
Vinayak Mali
2025bd9507
Project: FileMagic_Organizer 2023-10-13 16:05:06 +05:30
Ayush Bhardwaj
8aa865cff9
Merge pull request #340 from heysagnik/patch-1
Task Scheduler for Awesome-Python-Scripts
2023-10-13 11:44:24 +02:00
Sagnik Sahoo
7a89f5f089
Update README.md 2023-10-13 15:12:05 +05:30
Sagnik Sahoo
d67023b3e2
Create Readme.md 2023-10-13 14:53:45 +05:30
Ayush Bhardwaj
9d8cb797fc
Merge pull request #343 from iamshreeram/shreeram-x-scrapper
Create x scrapper
2023-10-13 10:36:43 +02:00
Shreeram
6ebff0c56a
Update requirements.txt 2023-10-12 10:53:39 +05:30
Shreeram
ad9e42044f feat: dump the tweets from given username for data analysis 2023-10-12 10:50:07 +05:30
Shreeram
474c4ebb79 feat: dump the tweets from given username for data analysis 2023-10-12 10:43:19 +05:30
Ayush Bhardwaj
8ec5ea8d32
Merge pull request #312 from hastagAB/dependabot/pip/elastic-snapshot/certifi-2023.7.22
Bump certifi from 2022.12.7 to 2023.7.22 in /elastic-snapshot
2023-10-09 14:40:08 +02:00
Ayush Bhardwaj
c61407a9ce
Merge pull request #311 from hastagAB/dependabot/pip/Github_Bot/certifi-2023.7.22
Bump certifi from 2022.12.7 to 2023.7.22 in /Github_Bot
2023-10-09 14:39:56 +02:00
Ayush Bhardwaj
06b8855f5f
Merge pull request #310 from hastagAB/dependabot/pip/url_shortener/certifi-2023.7.22
Bump certifi from 2022.12.7 to 2023.7.22 in /url_shortener
2023-10-09 14:39:43 +02:00
Ayush Bhardwaj
3e59aec9b3
Merge pull request #309 from hastagAB/dependabot/pip/Keylogger/certifi-2023.7.22
Bump certifi from 2022.12.7 to 2023.7.22 in /Keylogger
2023-10-09 14:39:25 +02:00
Ayush Bhardwaj
988c816911
Merge pull request #308 from hastagAB/dependabot/pip/yts_torrents/certifi-2023.7.22
Bump certifi from 2022.12.7 to 2023.7.22 in /yts_torrents
2023-10-09 14:39:10 +02:00
Ayush Bhardwaj
f622568945
Merge pull request #342 from Prathamesh-Ghatole/PDF_splitter
Added new script 'PDFsplitter'
2023-10-09 14:38:56 +02:00
Prathamesh Ghatole
e4aa4ed38c Added new script 'PDFsplitter' 2023-10-09 02:06:09 +05:30
Sagnik Sahoo
ed08bd9625
Create requirements.txt 2023-10-06 23:49:47 +05:30
Sagnik Sahoo
95be2f66e2
Create scheduler.py 2023-10-06 23:33:58 +05:30
Ayush Bhardwaj
e9e1cde1a6
Merge pull request #338 from sr2005roy/master
Update README.md
2023-10-06 11:11:12 +02:00
Ayush Bhardwaj
2d41942d8e
Merge pull request #336 from rudrakshkarpe/master
Improve contributing guidelines for Awesome-Python-Scripts
2023-10-06 11:09:47 +02:00
Ayush Bhardwaj
e0a3ad9541
Merge pull request #334 from hastagAB/dependabot/pip/PyRecorder/pillow-10.0.1
Bump pillow from 9.3.0 to 10.0.1 in /PyRecorder
2023-10-06 11:08:27 +02:00
Ayush Bhardwaj
f9df0d73a2
Merge pull request #333 from hastagAB/dependabot/pip/imageWatermarker/pillow-10.0.1
Bump pillow from 9.3.0 to 10.0.1 in /imageWatermarker
2023-10-06 11:08:14 +02:00
Ayush Bhardwaj
ae3efc3503
Merge pull request #330 from hastagAB/dependabot/pip/elastic-snapshot/urllib3-1.26.17
Bump urllib3 from 1.26.5 to 1.26.17 in /elastic-snapshot
2023-10-06 11:04:00 +02:00
Ayush Bhardwaj
65eaf02196
Merge pull request #329 from hastagAB/dependabot/pip/url_shortener/urllib3-1.26.17
Bump urllib3 from 1.26.5 to 1.26.17 in /url_shortener
2023-10-06 11:03:45 +02:00
dependabot[bot]
f276cac28f
Bump urllib3 from 1.26.5 to 1.26.17 in /elastic-snapshot
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-06 09:03:39 +00:00
dependabot[bot]
a45360b66b
Bump urllib3 from 1.26.5 to 1.26.17 in /url_shortener
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-06 09:03:38 +00:00
Ayush Bhardwaj
1c9a3e2a10
Merge pull request #328 from hastagAB/dependabot/pip/yts_torrents/urllib3-1.26.17
Bump urllib3 from 1.26.5 to 1.26.17 in /yts_torrents
2023-10-06 11:03:26 +02:00
Ayush Bhardwaj
c1d9003c4c
Merge pull request #327 from hastagAB/dependabot/pip/Github_Bot/urllib3-1.26.17
Bump urllib3 from 1.26.5 to 1.26.17 in /Github_Bot
2023-10-06 11:03:06 +02:00
Ayush Bhardwaj
54824b4c62
Merge pull request #326 from hastagAB/dependabot/pip/Tweets_Tool/urllib3-1.26.17
Bump urllib3 from 1.26.5 to 1.26.17 in /Tweets_Tool
2023-10-06 11:02:54 +02:00
sr2005roy
c2af13606d
Update README.md
Removed all the redundancy in project table Readme.md
2023-10-05 22:54:44 +05:30
Rudraksh Karpe
246b646e69
docs: updated CONTRIBUTING.md guildlines
- Fixed minor errors in previous CONTRIBUTING.md
- Updated commit message conventions
2023-10-05 03:04:16 +05:30
dependabot[bot]
3ceae2504b
Bump pillow from 9.3.0 to 10.0.1 in /PyRecorder
Bumps [pillow](https://github.com/python-pillow/Pillow) from 9.3.0 to 10.0.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/9.3.0...10.0.1)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-04 00:56:21 +00:00
dependabot[bot]
6d8d361bb3
Bump pillow from 9.3.0 to 10.0.1 in /imageWatermarker
Bumps [pillow](https://github.com/python-pillow/Pillow) from 9.3.0 to 10.0.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/9.3.0...10.0.1)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-04 00:56:15 +00:00
dependabot[bot]
f176f44a12
Bump urllib3 from 1.26.5 to 1.26.17 in /yts_torrents
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-03 04:45:28 +00:00
dependabot[bot]
13809b58c2
Bump urllib3 from 1.26.5 to 1.26.17 in /Github_Bot
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-03 04:40:10 +00:00
dependabot[bot]
a3c2606951
Bump urllib3 from 1.26.5 to 1.26.17 in /Tweets_Tool
Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.5...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-03 04:38:50 +00:00
Ayush Bhardwaj
f37e445103
Merge pull request #324 from sr2005roy/master
Update README.md
2023-10-02 11:34:14 +02:00
sr2005roy
acdfbedbae
Update README.md
to arrange the table of features in ascending order
2023-10-02 14:58:17 +05:30
Ayush Bhardwaj
fc2e323ba9
Merge pull request #320 from niranjanneeru/master
fix : #259 ANTIALIAS changed to LANCZOS
2023-10-02 10:49:51 +02:00
Niranjan B
72390bf61b docs: Added Dependencies to README 2023-09-29 16:21:21 +05:30
Niranjan B
f66126186b fix : #259 AttributeError fixed 2023-09-29 16:16:07 +05:30
Niranjan B
b652b9f602 fix : #259 ANTIALIAS changed to LANCZOS 2023-09-29 15:45:10 +05:30
Ayush Bhardwaj
dbe5f66e13
Merge pull request #315 from AbhayKabdwal/master
Improvised Youtube_Video_Downloader
2023-09-29 10:49:01 +02:00
Ayush Bhardwaj
76d0f16263
Merge pull request #318 from hiCXK/master
Corrected some broken links in README.md
2023-09-15 12:51:19 +02:00
Chaitanya Singh Kushwaha
9b541ff994
Corrected some broken links in README.md 2023-09-12 22:58:03 +05:30
Abhay Kabdwal
e2727befda Improvised Youtube_Video_Downloader 2023-09-03 18:56:01 +05:30
Ayush Bhardwaj
163c7946b8
Merge pull request #313 from hastagAB/dependabot/pip/file-encrypt-decrypt/cryptography-41.0.3
Bump cryptography from 41.0.2 to 41.0.3 in /file-encrypt-decrypt
2023-08-25 22:25:07 +05:30
dependabot[bot]
eaac3448df
Bump cryptography from 41.0.2 to 41.0.3 in /file-encrypt-decrypt
Bumps [cryptography](https://github.com/pyca/cryptography) from 41.0.2 to 41.0.3.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/41.0.2...41.0.3)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-02 02:21:31 +00:00
dependabot[bot]
93eb0f1f3c
Bump certifi from 2022.12.7 to 2023.7.22 in /elastic-snapshot
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-25 20:44:41 +00:00
dependabot[bot]
d1de68ba8f
Bump certifi from 2022.12.7 to 2023.7.22 in /Github_Bot
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-25 20:44:37 +00:00
dependabot[bot]
618d9524d5
Bump certifi from 2022.12.7 to 2023.7.22 in /url_shortener
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-25 20:44:14 +00:00
dependabot[bot]
8958ee7896
Bump certifi from 2022.12.7 to 2023.7.22 in /Keylogger
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-25 20:41:14 +00:00
dependabot[bot]
483ccfca9d
Bump certifi from 2022.12.7 to 2023.7.22 in /yts_torrents
Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
- [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

---
updated-dependencies:
- dependency-name: certifi
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-25 20:41:13 +00:00
Ayush Bhardwaj
93dd7abb03
Merge pull request #305 from hastagAB/dependabot/pip/Website_Url_Detector/requests-2.31.0
Bump requests from 2.22.0 to 2.31.0 in /Website_Url_Detector
2023-07-17 11:27:15 +05:30
Ayush Bhardwaj
cdc8c4ab9a
Merge pull request #304 from hastagAB/dependabot/pip/Top_News/requests-2.31.0
Bump requests from 2.24.0 to 2.31.0 in /Top_News
2023-07-17 11:26:54 +05:30
Ayush Bhardwaj
6c6857ae64
Merge pull request #303 from hastagAB/dependabot/pip/codeforcesChecker/requests-2.31.0
Bump requests from 2.22.0 to 2.31.0 in /codeforcesChecker
2023-07-17 11:26:41 +05:30
Ayush Bhardwaj
273b2bb936
Merge pull request #307 from hastagAB/dependabot/pip/file-encrypt-decrypt/cryptography-41.0.2
Bump cryptography from 39.0.1 to 41.0.2 in /file-encrypt-decrypt
2023-07-17 11:26:31 +05:30
dependabot[bot]
78cdc28c0d
Bump cryptography from 39.0.1 to 41.0.2 in /file-encrypt-decrypt
Bumps [cryptography](https://github.com/pyca/cryptography) from 39.0.1 to 41.0.2.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/39.0.1...41.0.2)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-15 00:55:52 +00:00
dependabot[bot]
ac9f6ebb1c
Bump requests from 2.22.0 to 2.31.0 in /Website_Url_Detector
Bumps [requests](https://github.com/psf/requests) from 2.22.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.22.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-27 17:36:53 +00:00
dependabot[bot]
087cd7cb22
Bump requests from 2.24.0 to 2.31.0 in /Top_News
Bumps [requests](https://github.com/psf/requests) from 2.24.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.24.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-27 17:36:53 +00:00
dependabot[bot]
21a4fa3048
Bump requests from 2.22.0 to 2.31.0 in /codeforcesChecker
Bumps [requests](https://github.com/psf/requests) from 2.22.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.22.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-27 17:36:52 +00:00
Ayush Bhardwaj
6f66b93c56
Merge pull request #302 from hastagAB/dependabot/pip/elastic-snapshot/requests-2.31.0
Bump requests from 2.24.0 to 2.31.0 in /elastic-snapshot
2023-05-27 23:06:22 +05:30
Ayush Bhardwaj
f5f091f47d
Merge pull request #301 from hastagAB/dependabot/pip/url_shortener/requests-2.31.0
Bump requests from 2.24.0 to 2.31.0 in /url_shortener
2023-05-27 23:06:10 +05:30
dependabot[bot]
9ec5e9847f
Bump requests from 2.24.0 to 2.31.0 in /url_shortener
Bumps [requests](https://github.com/psf/requests) from 2.24.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.24.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-23 06:01:21 +00:00
dependabot[bot]
45a953de72
Bump requests from 2.24.0 to 2.31.0 in /elastic-snapshot
Bumps [requests](https://github.com/psf/requests) from 2.24.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.24.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-23 06:01:15 +00:00
Ayush Bhardwaj
b19045c75e
Merge pull request #300 from hastagAB/dependabot/pip/Github_Bot/requests-2.31.0
Bump requests from 2.24.0 to 2.31.0 in /Github_Bot
2023-05-23 11:30:49 +05:30
Ayush Bhardwaj
1e355a3133
Merge pull request #299 from hastagAB/dependabot/pip/yts_torrents/requests-2.31.0
Bump requests from 2.22.0 to 2.31.0 in /yts_torrents
2023-05-23 11:30:26 +05:30
Ayush Bhardwaj
f3f755eed0
Merge pull request #298 from hastagAB/dependabot/pip/Tweets_Tool/requests-2.31.0
Bump requests from 2.20.0 to 2.31.0 in /Tweets_Tool
2023-05-23 11:30:14 +05:30
dependabot[bot]
4e4e18f73a
Bump requests from 2.24.0 to 2.31.0 in /Github_Bot
Bumps [requests](https://github.com/psf/requests) from 2.24.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.24.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-23 00:17:50 +00:00
dependabot[bot]
f118e207f6
Bump requests from 2.22.0 to 2.31.0 in /yts_torrents
Bumps [requests](https://github.com/psf/requests) from 2.22.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.22.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-22 23:12:59 +00:00
dependabot[bot]
66bf8de079
Bump requests from 2.20.0 to 2.31.0 in /Tweets_Tool
Bumps [requests](https://github.com/psf/requests) from 2.20.0 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.20.0...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-22 21:39:09 +00:00
38 changed files with 1196 additions and 280 deletions

View File

@ -5,11 +5,11 @@
## Checklist
<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->
- [ ] I have read and followed the [Contribution Guidlines](https://github.com/hastagAB/Awesome-Python-Scripts#contribution-guidelines-) before creating this PR.
- [ ] I've added a new Script
- [ ] Script is tested and running perfectly fine on my system
- [x] I have read and followed the [Contribution Guidlines](https://github.com/hastagAB/Awesome-Python-Scripts#contribution-guidelines-) before creating this PR.
- [x] I've added a new Script
- [x] Script is tested and running perfectly fine on my system
- [ ] PR is regarding the Documetation
- [ ] This change requires a documentation update
- [x] This change requires a documentation update

View File

@ -0,0 +1,30 @@
# Mass_Email_Unique_Attachments
Sends mails to a list of addresses, with different attachments.
Useful for mailing personalized certificates, layoff letters and wedding invitations.
Reads data from a CSV file with email addresses and the names of the files which are to be sent as attachments.
# Setup
- Create a folder containing all attachments which are to be sent
- Create a CSV file with two columns, the name of the attachment file, and the mail address of the receiver
- Add the path of the folder and CSV file in your script
# Usage
There are two scripts, the native script will use the Outlook or Windows Mail to send the mails. The mails will be sent from your currently logged-in mail id. This script is suitable for Windows.
The SMTP script allows you to setup a SMTP server to send mails. Follow the comment instructions in the script to setup an SMTP server. This requires you to allow alternative sign-in from your email provider.
The `smtp_server` depends on which mail provider you are using. Common servers for major providers are:
- Yahoo!
- smtp.mail.yahoo.com
- Gmail
- smtp.gmail.com
- Outlook
- smtp.office365.com / smtp-mail.outlook.com
The password to be entered in `smtp_password` is generated from your email provider settings.
- https://hotter.io/docs/email-accounts/secure-app-gmail/
- https://superuser.com/questions/1521236/how-to-allow-less-secure-app-access-in-microsoft-email
- https://help.inspectionsupport.com/en/articles/392427-enable-less-secure-apps-for-smtp-use-isn-yahoo-mail
The first script is suitable for users who don't wish to setup an SMTP server, or don't want to generate a less secure key.
# Alteration
You can modify the code to change the type of attachments being sent, for example instead of PDFs, you can send Word documents by changing the `pdf_file_name = row['name'] + '.pdf'` to `pdf_file_name = row['name'] + '.docx'`. For images, use .png, .jpg, etc.
You can also comment out the CC option if you don't wish to CC the mail to anyone.

View File

@ -0,0 +1,37 @@
import win32com.client
import pandas as pd
import os
# Load the CSV file
csv_file = 'your_file_path_here' # Replace with the path to your CSV file, make sure to have \\ instead of \
df = pd.read_csv(csv_file)
# Path to the folder containing the PDFs
pdf_folder_path = 'your_folder_here' # Add the attachment folder you wish to send (name them as per the CSV file)
# Outlook setup
ol = win32com.client.Dispatch("outlook.application")
olmailitem = 0x0
# Sending each mail
for index, row in df.iterrows():
newmail = ol.CreateItem(olmailitem)
newmail.Subject = 'enter_subject_here'
newmail.To = row['email'] # Assuming your CSV has a column named 'email' with the mail address
newmail.CC = '' # cc; optional
newmail.Body = '' # text contents of your mail
# PDF file name and path
pdf_file_name = row['name'] + '.pdf' # Assuming your CSV has a column named 'name'
pdf_file_path = os.path.join(pdf_folder_path, pdf_file_name)
if os.path.exists(pdf_file_path):
newmail.Attachments.Add(pdf_file_path)
else:
print(f"PDF file not found for {row['name']}")
newmail.Send()
# Note: This script will send emails as soon as it's run. Be careful!

Binary file not shown.

View File

@ -0,0 +1,52 @@
import pandas as pd
import os
import smtplib
from email.message import EmailMessage
from email.mime.base import MIMEBase
from email import encoders
# Load the CSV file
csv_file = 'file_path' # CSV Path
df = pd.read_csv(csv_file)
# Path to the folder containing the PDFs
pdf_folder_path = 'Attachment_folder_path' # Add the attachment folder you wish to send (name them as per the CSV file)
# Email server configuration
smtp_server = '' # Replace with your SMTP server
smtp_port = 587 # Replace with your SMTP port (commonly 587 for TLS)
smtp_user = '' # Replace with your email address
smtp_password = '' # Replace with your unique access password (typically 16 letter generated through your email provider's settings)
# Sending each mail
for index, row in df.iterrows():
# Create a new email message
msg = EmailMessage()
msg['Subject'] = 'enter_subject_here'
msg['From'] = smtp_user
msg['To'] = row['email'] # Assuming your CSV has a column named 'email' for the address
msg['CC'] = '' # CC; optional
msg.set_content('') # The text contents of the mail
# PDF file name and path
pdf_file_name = row['name'] + '.pdf' # Assuming your CSV has a column named 'name' for the person you are sending to
pdf_file_path = os.path.join(pdf_folder_path, pdf_file_name)
# Check if the PDF file exists and attach it
if os.path.exists(pdf_file_path):
with open(pdf_file_path, 'rb') as f:
file_data = f.read()
file_type = 'application/pdf'
file_name = pdf_file_name
msg.add_attachment(file_data, maintype='application', subtype='pdf', filename=file_name)
else:
print(f"PDF file not found for {row['name']}")
# Send the email
with smtplib.SMTP(smtp_server, smtp_port) as server:
server.starttls()
server.login(smtp_user, smtp_password)
server.send_message(msg)
# This script will send emails as soon as it's run. Be careful!

View File

@ -31,11 +31,33 @@ You can see what all you changes using the `git status` command.
## 4. Add all you changes
Add all your changes to you branch using the `git add .` command
## 5. Commit your changes
Commit your changes to your branch using `git commit -m "commit message"` command.
## Commit Message Conventions
- Start with a short summary (50 characters or less) of the changes made.
- Use the present tense and imperative mood.
- Separate the summary from the body of the message with a blank line.
- Use the body to explain what and why changes were made, as well as any necessary details.
- Additionally, you can consider using [semantic commit messages](https://gist.github.com/joshbuchea/6f47e86d2510bce28f8e7f42ae84c716?permalink_comment_id=3867882) like "feat:", "docs:", etc. which will provide additional context to the commit message.
| Commit Type | Description |
| ---- | ---- |
| `feat` | New feature or functionality added |
| `fix` | Bug fix |
| `docs` | Changes to documentation |
| `test` | Adding or updating tests |
| `chore` | Maintenance tasks such as refactoring, dependencies updates, or removing unused code |
| `ci` | Changes to the build or continuous integration process |
## 5. Push you changes to GitHub
Switch to the main branch using this command:
Switch to the master branch using this command:
```git checkout master```
Push all your changes to GitHub using the command:
```git push --set-upstream origin <your_branch_name>```

View File

@ -0,0 +1,61 @@
## FileMagic Organizer - Unleash the Power of Order
Welcome to FileMagic Organizer, where chaos meets its match. This Python script is your ally in the battle against cluttered directories. FileMagic Organizer effortlessly sorts your files into designated categories, bringing harmony to the digital realm.
## Index
- [Introduction](#)
- [Key Features](#key-features)
- [Getting Started](#getting-started)
- [Options provided](#options-provided)
- [Usage](#usage)
- [Customization](#customization)
## Key Features:
- 🔮 **Magical Categorization:** FileMagic Organizer intelligently sorts files by type, creating a structured and easily navigable file system.
- 📅 **Chronological Arrangement:** Dive into the past with chronological organization, unveiling the history of your files in an orderly timeline.
📏 **Size-based Sorting:** Experience the wizardry of size-based categorization, with files neatly grouped into small, medium, and large categories.
## **Getting Started:**
1. ⚡ **Clone the Repository:** Embrace the magic by cloning the FileMagic Organizer repository.
2. 🚀 **Install Dependencies:** Initiate the enchantment with a quick installation of the required Python libraries.
3. ✨ **Run the Magic Spell:** Execute the script, follow the prompts, and witness the transformation as FileMagic Organizer weaves its organizational magic.
## Options provided
- Organize files by type (e.g., images, documents, videos).
- Organize files by creation date into a hierarchical structure of year and month.
- Categorize files by size into small, medium, and large categories.
## Usage
1. **Clone the Repository:**
```bash
git clone https://github.com/malivinayak/file-organizer.git
cd file-organizer
```
2. **Install Dependencies:**
Ensure you have Python installed. Install the required libraries:
```bash
pip install -r requirements.txt
```
3. **Run the Script:**
```bash
python organize_files.py
```
## Customization
- Adjust the file type categories, file extensions, and any other settings in the script based on your needs.
- Modify the size categories and ranges in the script for organizing files by size.

104
FileMagic_Organizer/main.py Normal file
View File

@ -0,0 +1,104 @@
import os
import shutil
import datetime
def categorize_by_size(file_size):
# Define size categories and their ranges in bytes
size_categories = {
'small': (0, 1024), # Up to 1 KB
'medium': (1025, 1024 * 1024), # 1 KB to 1 MB
'large': (1024 * 1025, float('inf')) # Larger than 1 MB
}
for category, (min_size, max_size) in size_categories.items():
if min_size <= file_size < max_size:
return category
return 'unknown'
def organize_files(source_dir, destination_dir, organize_by_type=True, organize_by_date=True, organize_by_size=True):
# Create a dictionary to map file extensions to corresponding folders
file_types = {
'images': ['.png', '.jpg', '.jpeg', '.gif'],
'documents': ['.pdf', '.docx', '.txt'],
'videos': ['.mp4', '.avi', '.mkv'],
'other': [] # Add more categories and file extensions as needed
}
# Create destination subdirectories if they don't exist
if organize_by_type:
for folder in file_types:
folder_path = os.path.join(destination_dir, folder)
os.makedirs(folder_path, exist_ok=True)
if organize_by_date:
for year in range(2010, 2030): # Adjust the range based on your needs
year_folder = os.path.join(destination_dir, str(year))
os.makedirs(year_folder, exist_ok=True)
for month in range(1, 13):
month_folder = os.path.join(year_folder, f"{month:02d}")
os.makedirs(month_folder, exist_ok=True)
if organize_by_size:
for size_category in ['small', 'medium', 'large']:
size_folder = os.path.join(destination_dir, size_category)
os.makedirs(size_folder, exist_ok=True)
# Scan the source directory and organize files
for filename in os.listdir(source_dir):
file_path = os.path.join(source_dir, filename)
if os.path.isfile(file_path):
# Determine the file type based on extension
file_type = None
for category, extensions in file_types.items():
if any(filename.lower().endswith(ext) for ext in extensions):
file_type = category
break
if organize_by_type and file_type:
# Move the file to the corresponding subdirectory
destination_folder = os.path.join(destination_dir, file_type)
destination_path = os.path.join(destination_folder, filename)
shutil.move(file_path, destination_path)
print(f"Moved: {filename} to {file_type} folder")
if organize_by_date:
# Get the creation date of the file
creation_time = os.path.getctime(file_path)
creation_date = datetime.datetime.fromtimestamp(creation_time)
# Determine the destination folder based on creation date
destination_folder = os.path.join(
destination_dir,
str(creation_date.year),
f"{creation_date.month:02d}",
)
# Move the file to the corresponding subdirectory
destination_path = os.path.join(destination_folder, filename)
shutil.move(file_path, destination_path)
print(f"Moved: {filename} to {creation_date.year}/{creation_date.month:02d} folder")
if organize_by_size:
# Get the size of the file in bytes
file_size = os.path.getsize(file_path)
# Determine the destination folder based on file size
size_category = categorize_by_size(file_size)
destination_folder = os.path.join(destination_dir, size_category)
destination_path = os.path.join(destination_folder, filename)
shutil.move(file_path, destination_path)
print(f"Moved: {filename} to {size_category} folder")
# Get source and destination directories from the user
source_directory = input("Enter the source directory path: ")
destination_directory = input("Enter the destination directory path: ")
# Ask the user how they want to organize the files
organize_by_type = input("Organize by file type? (yes/no): ").lower() == 'yes'
organize_by_date = input("Organize by creation date? (yes/no): ").lower() == 'yes'
organize_by_size = input("Organize by size? (yes/no): ").lower() == 'yes'
organize_files(source_directory, destination_directory, organize_by_type, organize_by_date, organize_by_size)

View File

@ -0,0 +1,33 @@
# GitHub Pull Request Review Script
This Python script allows you to automatically review all pull requests in a specified GitHub repository.
## Prerequisites
Before you can use this script, ensure you have the following:
- Python installed on your system.
- The `selenium` Python package. You can install it using `pip`:
```
pip install selenium
```
- [GeckoDriver](https://github.com/mozilla/geckodriver) for Firefox. Make sure to download the correct version for your system. Or you can replace `FireFox()` with your own webdriver
- A GitHub account with the necessary access rights to review pull requests in the target repository.
## Usage
1. Clone or download this repository to your local machine.
2. Open the script `github_pull_request_review.py` in a text editor or Python IDE.
3. Run the script by executing:
```bash
python main.py
```
4. Answer the prompt
5. The script will start add review comments.

57
Github-Review-Bot/main.py Normal file
View File

@ -0,0 +1,57 @@
# Python Script to review all the pull request of mentioned repository
from selenium.webdriver import Firefox, ActionChains
from selenium.webdriver.common.by import By
import random
from selenium.webdriver.common.keys import Keys
username = None
password = None
class Github:
def __init__(self, repo_owner, repo_name):
self.base_url = "https://github.com/"
self.repo_owner = repo_owner
self.repo_name = repo_name
self.isLogin = False
self.driver = Firefox()
self.pull_requests = None
def login(self):
self.driver.get(self.base_url+"/login")
self.driver.find_element(by=By.ID, value="login_field").send_keys(username)
self.driver.find_element(by=By.ID, value="password").send_keys(password)
self.driver.find_element(by=By.NAME, value="commit").click()
self.isLogin = True
def writeReview(self):
if not self.isLogin:
self.login()
self.driver.get(self.base_url+self.repo_owner+"/"+self.repo_name+"/pulls")
self.driver.implicitly_wait(10)
pull_requests = self.driver.find_elements(by=By.XPATH, value="//a[@data-hovercard-type='pull_request']")
self.pull_requests = [pull_request.get_attribute("href") for pull_request in pull_requests]
for pull_request in self.pull_requests:
self.driver.get(pull_request+"/files")
self.driver.implicitly_wait(10)
self.driver.find_element(by=By.ID, value="review-changes-modal").click()
self.driver.implicitly_wait(10)
self.driver.find_element(by=By.ID, value="pull_request_review[event]_approve").click()
self.driver.implicitly_wait(10)
self.driver.find_element(by=By.ID, value="pull_request_review_body").send_keys(random.choice(["LGTM", "Looks good to me", "LGTM, thanks for the contribution", "Seems good to me!"]))
self.driver.implicitly_wait(10)
ActionChains(self.driver).key_down(Keys.CONTROL).send_keys(Keys.ENTER).key_up(Keys.CONTROL).perform()
self.driver.implicitly_wait(10)
if __name__ == "__main__":
username = input("Enter your username: ")
password = input("Enter your password: ")
github_owner = input("Enter the repository owner: ")
github_repo = input("Enter the repository name: ")
github = Github(github_owner, github_repo)
github.writeReview()

View File

@ -0,0 +1 @@
selenium

View File

@ -1,5 +1,5 @@
certifi==2022.12.7
certifi==2023.7.22
chardet==3.0.4
idna==2.10
requests==2.24.0
urllib3==1.26.5
requests==2.31.0
urllib3==1.26.18

View File

@ -2,11 +2,18 @@ import PIL
from PIL import Image
from tkinter.filedialog import *
file_path=askopenfilenames()
img = PIL.Image.open(file_path)
myHeight,myWidth = img.size
file_paths = askopenfilenames()
img=img.resize((myHeight,myWidth),PIL.Image.ANTILIAS)
save_path=asksaveasfile()
if len(file_paths) == 0:
print("No Files Selected")
img.save(save_path+"_compressed.JPG")
for file in file_paths:
file_name = file.split('/')[-1]
file_name, extension = file_name.split('.')
img = PIL.Image.open(file)
height,width = img.size
img=img.resize((height,width),Image.Resampling.LANCZOS)
save_path=askdirectory()
img.save(save_path+f"/{file_name}_compressed.{extension}")

View File

@ -7,5 +7,7 @@ It automates the task of compressing the image in day to day lives.
# Dependencies:
pip install image
Note : Use python3.11 for tkinder
`pip install pillow`

View File

@ -1,6 +1,6 @@
astroid==2.1.0
autopep8==1.4.3
certifi==2022.12.7
certifi==2023.7.22
colorama==0.4.1
isort==4.3.4
lazy-object-proxy==1.3.1

View File

@ -0,0 +1,74 @@
# Decrypt Your Password Protected pdf files Here
**Pdf-Password-Decrypter is a Python application that can be used to decrypt PDF files that are password-protected. This is optimised for Linux with apt**
# Features
+ Allows users to select a password-protected PDF file to be decrypted.
+ Provides an entry widget for the user to enter the password for the PDF file.
+ Allows users to enter a new name for the decrypted PDF file.
+ Creates a new PDF file that is not password-protected.
+ Allows users to view the decrypted PDF file in the Evince PDF viewer.
# Upcoming featuers
Some of the upcoming features include:
+ Editing the pdf directly.
+ Lock the pdf with a new password.
+ Unlocking encrypted pdf files with Brute Force attack.
+ Better UI design.
+ Replace tkinter with Kivy module of python.
+ Switch from PyPDF2 to some other python modules as it is no longer maintained.
# Pre-requisites
To run this Python program you would need these following packages
+ Python(version 3.7 or higher)
+ Tkinter python package
+ PyPDF2 python package(no longer maintained)
+ Evince pdf viewer
+ GIT
# Installation
You need to install all the prerequisites, follow the commands:
+ Installing python:
```
sudo apt install python3 -y
```
+ Installing Tkinter python package:
```
sudo apt install python3-tk -y
```
+ Installing PyPDF2 python package:
```
pip install pypdf2
```
+ Installing Evince pdf viewer:
```
sudo apt install evince -y
```
+ Installing Git:
```
sudo apt install git -y
```
# Usage
+ You need to first close this repository:
```
git clone https://github.com/parthasdey2304/Awesome-Python-Scripts.git
```
+ Getting inside the repository:
```
cd Awesome-Python-Scripts/PDF_Password_Decrypter
```
+ Running the python file:
```
python3 main.py
```
+ Done
# THANK YOU COMMUNITY!!!!

View File

@ -0,0 +1,82 @@
import os
import PyPDF2
from tkinter import *
from tkinter import filedialog
# Create a GUI window using tkinter
root = Tk()
root.configure(background='grey')
root.title('PDF Password Remover')
root.geometry('300x350')
# this is the method select_file which when invoked uses filedialog to open a file and store the path of the file in the variable file_path
def select_file():
global file_path
file_path = filedialog.askopenfilename()
# Creating a label to show the file path
Label(root, text=file_path, bg='grey', fg='white').pack(pady=10)
# this is the method decrypt which when invoked decrypts the file using the password provided by the user
def decrypt():
passwd = password.get() # getting the password from the entry widget
# Opening the PDF file with a password
pdf_file = open(file_path, 'rb')
pdf_reader = PyPDF2.PdfReader(pdf_file)
if pdf_reader.is_encrypted:
pdf_reader.decrypt(passwd)
# Create a new PDF file without password protection
pdf_writer = PyPDF2.PdfWriter()
length = len(pdf_reader.pages)
for page_num in range(length):
pdf_writer.add_page(pdf_reader.pages[length - page_num - 1])
# Creating a new file with the name provided by the user
new_file_name = new_file.get()+".pdf"
new_pdf_file = open(new_file_name, 'wb')
pdf_writer.write(new_pdf_file)
# Closing the files
pdf_file.close()
new_pdf_file.close()
# Showing the file in a tkinter window
show_pdf()
# this is a method that has a canvas of 500x700 resizeable to show the pdf file
# def show_pdf():
# pdf_file = open(new_file.get()+".pdf", 'rb')
# pdf_reader = PyPDF2.PdfReader(pdf_file)
# page = pdf_reader.pages[0]
# page_content = page.extract_text()
# print(page_content)
# pdf_file.close()
def show_pdf():
pdf_file = new_file.get()+".pdf"
os.system(f"evince {pdf_file}")
# Button to choose the file to be decrypted
Button(root, text='Select File', bg='white', font=('arial', 12, 'normal'), command=select_file).pack(pady=20)
# Label widget to show the password
Label(root, text='Password: ', bg='grey', fg = 'white', font=('arial', 12, 'normal')).pack()
# Entry widget to accept the password
password = Entry(root,text='Password', width=20, font=('arial', 12, 'normal'), show='*', border=2)
password.pack(pady=20)
# Label widget to show the name with which the new file would be stored
Label(root, text='New File Name:', bg='grey', fg = 'white', font=('arial', 12, 'normal')).pack()
# Entry widget to accept the name with which the new file would be stored
new_file = Entry(root,text='New File Name', width=20, font=('arial', 12, 'normal'), border=2)
new_file.pack(pady=20)
# Button to decrypt the file
Button(root, text='Decrypt', bg='white', font=('arial', 12, 'normal'), command=decrypt).pack(pady=20)
root.mainloop()

View File

@ -0,0 +1,44 @@
import PyPDF2
import argparse
import os
def split_pdf(input_pdf_path, output_folder):
# Open the PDF file
pdf_file = open(input_pdf_path, "rb")
input_pdf_name = os.path.basename(input_pdf_path).split(".")[0]
pdf_reader = PyPDF2.PdfReader(pdf_file)
# Create the output folder if it doesn't exist
os.makedirs(output_folder, exist_ok=True)
# Loop through each page and save it as a separate PDF file
for page_num in range(len(pdf_reader.pages)):
pdf_writer = PyPDF2.PdfWriter()
pdf_writer.add_page(pdf_reader.pages[page_num])
output_pdf_path = os.path.join(
output_folder, f"{input_pdf_name}_{page_num + 1}.pdf"
)
with open(output_pdf_path, "wb") as output_pdf:
pdf_writer.write(output_pdf)
print(f"Page {page_num + 1} saved as {output_pdf_path}")
# Close the input PDF file
pdf_file.close()
if __name__ == "__main__":
parser = argparse.ArgumentParser(
description="Split a PDF file into separate pages")
parser.add_argument(
"input_pdf", help="Input PDF file path")
parser.add_argument(
"output_folder", help="Output folder path for split pages")
args = parser.parse_args()
input_pdf_path = args.input_pdf
output_folder = args.output_folder
split_pdf(input_pdf_path, output_folder)

22
PDFsplitter/README.md Normal file
View File

@ -0,0 +1,22 @@
## PDFsplitter
This Python script allows you to split a PDF file into separate PDF files, one for each page. It uses the PyPDF2 library to perform the splitting.
### Usage
1. Make sure you have Python 3.x installed on your system.
2. Install the required PyPDF2 library using pip:
```pip install PyPDF2```
3. Run the script with the following command:
`python PDFsplitter.py input_pdf output_folder`
- `input_pdf`: The path to the input PDF file that you want to split.
- `output_folder`: The folder where the split PDF pages will be saved.
### Example
To split an input PDF file named `input.pdf` into separate pages and save them in an `output_pages` folder, you can run the following command:
python PDFsplitter.py input.pdf output_pages

View File

@ -0,0 +1 @@
PyPDF2==3.0.1

View File

@ -1,3 +1,3 @@
numpy==1.22.0
opencv-python==4.1.1.26
Pillow==9.3.0
Pillow==10.2.0

348
README.md
View File

@ -1,15 +1,18 @@
# Awesome Python Scripts :sunglasses: <img alt="PyPI" src="https://warehouse-camo.cmh1.psfhosted.org/18509a25dde64f893bd96f21682bd6211c3d4e80/68747470733a2f2f696d672e736869656c64732e696f2f707970692f707976657273696f6e732f64796e61636f6e662e737667"> [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/hastagAB/Awesome-Python-Scripts) ![GitHub stars](https://img.shields.io/github/stars/hastagAB/Awesome-Python-Scripts?style=social)
# Awesome Python Scripts :snake:
<img alt="PyPI" src="https://pypi.org/static/images/logo-small.8998e9d1.svg" height="30px" width="auto"> [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/hastagAB/Awesome-Python-Scripts) ![GitHub stars](https://img.shields.io/github/stars/hastagAB/Awesome-Python-Scripts?style=social)
## Contents:
- [What is this repo?](#what-is-this-repo)
- [What do we have?](#what-do-we-have)
- [How to use?](#how-to-use)
- [Contribution Guidelines](#contributions-guidelines)
- [Steps required to follow before adding any script](#steps-required-to-follow-before-adding-any-script)
- [Contribution Guidelines](#contributions-guidelines)
- [If you like the project](#if-you-like-the-project)
- [Awesome Python Scripts :sunglasses: ](#awesome-python-scripts-sunglasses----)
- [Contents:](#contents)
- [What is this repo?](#what-is-this-repo)
- [What do we have:](#what-do-we-have)
- [How to use:](#how-to-use)
- [Contribution Guidelines:](#contribution-guidelines)
- [Steps required to follow before adding any script](#steps-required-to-follow-before-adding-any-script)
- [If you like the project:](#if-you-like-the-project)
- [Want to connect with me?](#want-to-connect-with-me)
## What is this repo?
@ -22,194 +25,141 @@ So far, the following projects have been integrated to this repo:
| Project Name | Contributors |
|--|--|
| [TicTacToe AI and 2 players](https://github.com/ShadowHunter15/Awesome-Python-Scripts/tree/master/TicTacToe_AI_and_2_players) | [Omar Sameh](https://github.com/ShadowHunter15) |
| [AI for guess the number](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/AI_for_Guess_the_number) | [Omar Sameh](https://github.com/ShadowHunter15) |
| [sudoku-solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/sudoku-solver) | [Rishabh Umrao](https://github.com/ayedaemon) |
|[File Encrypt Decrypt](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)|
| [Address locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Adress) | [Chris]() |
| [Automated emails](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/automated_email) | [Suvigya](https://github.com/SuvigyaJain1) |
|[AI chatbot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) |
|[Asymmetric Encryption](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) |
|[Bitcoin price GUI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) |
|[Better_CSV_Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Better_CSV_Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) |
|[Cryptocurrency Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) |
|[Cryptocurrency Prices](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-Prices) |[xemeds](https://github.com/xemeds) |
|[Caesar Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/caesar_cipher) |[epi052](https://github.com/epi052) |
|[Checksum tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Checksum) |[Austin Ewens](https://github.com/aewens) |
|[Codechef autosubmitter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) |
|[Colored B&W Image Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) |
|[Contact 'Leads' Distribution](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) |
|[Cricket Matches web Scraper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) |
| [Crypt socket](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Crypt_Socket)|[Willian GL](https://github.com/williangl) |
| [CSV to Excel](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CSV-to-Excel)|[xemeds](https://github.com/xemeds) |
|[Current City Weather](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) |
|[Directory organizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory-organizer) | [Athul P](https://github.com/athulpn) |
|[Database-As-Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Database-As-Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) |
|[DOH DIG](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/DOH-Dig/) | [Ryan](https://github.com/awsumco) |
|[English Theasaurus](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/English_Theasaurus/) | [Ansh Dhingra](https://github.com/anshdhinhgra47) |
|[Elasticsearch snapshot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/elastic-snapshot) | [Joe Ryan](https://github.com/joeryan) |
|[Excel Files Merger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)|
|[Excel to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Extended_ip_address_info](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)|
|[File explorer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)|
|[File Sharing Bot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)|
|[Flash card quizzer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) |
|[Frammed text generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/FramedText) | [jcdwalle](https://github.com/jcdwalle)|
|[git_automation](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/git_automation)| [loge1998](https://github.com/loge1998)|
|[Gmail Mailing Script](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/mailing) |[mayank-kapur](https://github.com/kapurm17) |
|[Get Time By TimeZone](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Get_Time_TimezoneWise)|[Parth Shah](https://github.com/codingis4noobs) |
|[Handwrting DNN recognizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Handwriting_Recognizer) |[Chris]() |
|[HTML Table to List](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Image circle formatter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image-Circulator) |[Berk Gureken](https://github.com/bureken) |
|[Image To PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/images2pdf)|[msaoudallah](https://github.com/msaoudallah)|
|[Instadp Web Scrapper](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/InstadpShower)|[Psychiquest](https://github.com/psychiquest)|
|[IP Address ](https://github.com/hashtagAB/Awesome-Python-Scripts/tree/master/ipaddress)|[Xenium](https://github.com/xeniumcode)|
|[Keylogger](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Keylogger) |[Preet Mishra](https://github.com/preetmishra) |
|[Minecraft Server in background](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)|
|[Own IP locator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Location_Of_Own_IP_Adress)|[Chris]()|
|[Port Scanner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)|
|[Harry Potter Cloak](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Harry-Potter-Cloak) | [thesmartdeveloperr](https://github.com/thesmartdeveloperr)|
|[Python Algebra Solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)|
|[Random name generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)|
|[Random Password Generators](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)|
|[Server Ping](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Ping_Server)|[prince]()|
|[Signature photo to PNG converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)|
|[Simple Webpage Parser](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Slideshare downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)|
|[SMS your location](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SmsYourLocation)|[prince]()|
|[Squid installer for Ubuntu](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()|
|[Subtitle downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)|
|[TTS - Text to Speech Mp3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TTS_Text_to_Speech_Mp3)|[Antonio Andrade](https://github.com/xAndrade)|
|[Top_News](Top_News)|[Attupatil](https://github.com/Attupatil)|
|[Take Screenshot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Take_screenshot)|[Moad Mohammed Elhebri](https://github.com/moadmmh)|
|[To Do Bot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/To-Do-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)|
|[Upload Files to S3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)|
|[Vinegère Cipher](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/vigenere_cipher)|[victoni](https://github.com/victoni)|
|[Web proxy](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)|
|[Website blocker](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)|
|[Word generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Word-generator)|[TGLIDE](https://github.com/TGlide)|
|[Work log generator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)|
|[Youtube video downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)|
|[Zabbix API](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/zabbix_api)|[msg4sunny](https://github.com/msg4sunny)|
|[Zip password cracker](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)|
|[RSA Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Algorithm)|[Chinmay Rane](https://github.com/Chinmayrane16)|
|[CLI Calculator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/cli_calculator)|[Willian GL](https://github.com/williangl) |
|[Find PhoneNumber in String](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)|
|[IMDB TV Series Info Extractor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) |
|[PX to REM](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PX-to-REM)|[Atthaphon Urairat](https://github.com/uatthaphon) |
|[py_based_music_player](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/py_based_music_player) | [Bhargav Kuvadiya](https://github.com/techdobz) |
|[Yoda-speak Translator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/speak_like_yoda)|[sonniki](https://github.com/sonniki) |
|[SSH Host adder](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SSH_Host_Adder)|[NinoDoko](https://github.com/NinoDoko)|
|[Wikipedia-Search](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Wikipedia-Search)|[Nissaar](https://github.com/Nissaar) |
|[Instagram Video Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/insta_video_downloader)|[Shobhit Bhosure](https://github.com/shobhit99) |
|[Medium Article Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)|
|[Face Recognition](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/image_recognition)|[LOKESH KHURANA](https://github.com/theluvvkhurana)|
|[File Encrypt Decrypt](file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)|
| [Address locator](Location_Of_Adress) | [Chris]() |
| [Automated calendar](automated_calendar) | [J.A. Hernández](https://github.com/jesusalberto18) |
| [Automated emails](automated_email) | [Suvigya](https://github.com/SuvigyaJain1) |
|[AI chatbot](Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) |
|[Asymmetric Encryption](asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) |
|[Bitcoin price GUI](Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) |
|[Cryptocurrency Converter](Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) |
|[Caesar Cipher](caesar_cipher) |[epi052](https://github.com/epi052) |
|[Checksum tool](Checksum) |[Austin Ewens](https://github.com/aewens) |
|[Codechef autosubmitter](Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) |
|[Colored B&W Image Converter](Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) |
|[Contact 'Leads' Distribution](Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) |
|[2048](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/2048)|[Krunal](https://github.com/gitkp11)|
|[AI chatbot](Artificial-intelligence_bot) |[umar abdullahi](https://github.com/umarbrowser) |
|[AI for guess the number](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/AI_for_Guess_the_number) | [Omar Sameh](https://github.com/ShadowHunter15) |
|[Address locator](Location_Of_Adress) | [Chris]() |
|[Asymmetric Encryption](asymmetric_cryptography) |[victor matheus](https://github.com/victormatheusc) |
|[Attachment Unique Mail](Attachment_Unique_Mail) |[Arnav Dandekar](https://github.com/4rnv) |
|[Automated calendar](automated_calendar) | [J.A. Hernández](https://github.com/jesusalberto18) |
|[Automated emails](automated_email) | [Suvigya](https://github.com/SuvigyaJain1) |
|[Battery_notification](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Battery_notification/)|[Krishna Sharma](https://github.com/krishnasharma1386)|
|[Better_CSV_Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Better_CSV_Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) |
|[Bitcoin price GUI](Bitcoin-Price-GUI) |[Amirul Abu](https://github.com/amirulabu) |
|[CLI Calculator](cli_calculator)|[Willian GL](https://github.com/williangl) |
|[COVID visualiser (real-time) ](covid_visualiser)|[Tushar Gupta](https://github.com/tushar5526)|
|[CSV to Excel](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/CSV-to-Excel)|[xemeds](https://github.com/xemeds) |
|[Caesar Cipher](caesar_cipher) |[epi052](https://github.com/epi052) |
|[Checksum tool](Checksum) |[Austin Ewens](https://github.com/aewens) |
|[Clean_up_photo](Clean_up_photo_directory)|[sritanmay001](https://github.com/sritanmy001)|
|[Codechef autosubmitter](Codechef-Code-Submitter) |[Harshit Mahajan](https://github.com/hmahajan99) |
|[Codeforces Checker](codeforcesChecker)|[Jinesh Parakh](https://github.com/jineshparakh)|
|[Colored B&W Image Converter](Color_to_BW_Converter) |[Nitish Srivastava](https://github.com/nitish-iiitd) |
|[Contact 'Leads' Distribution](Contact-Distribution) |[Tiago Cordeiro](https://github.com/tiagocordeiro) |
|[Countdown](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Countdown)|[Jeremias Gomes](https://github.com/j3r3mias)|
|[csv_to_json](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/csv_to_json)|[MoiZ](https://github.com/TechBoyy6)|
|[Cricket Matches web Scraper](CricBuzz_Score_Update) |[Divy Ranjan](https://github.com/divyranjan17) |
| [Crypt socket](Crypt_Socket)|[Willian GL](https://github.com/williangl) |
|[Current City Weather](Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) |
|[Directory organizer](Directory-organizer) | [Athul P](https://github.com/athulpn) |
|[DOH DIG](DOH-Dig/) | [Ryan](https://github.com/awsumco) |
|[Excel Files Merger](Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)|
|[Excel to List](Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Crypt socket](Crypt_Socket)|[Willian GL](https://github.com/williangl) |
|[Cryptocurrency Converter](Cryptocurrency-converter) |[AdnCodz](https://github.com/AdnCodez) |
|[Cryptocurrency Prices](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Cryptocurrency-Prices) |[xemeds](https://github.com/xemeds) |
|[Current City Weather](Current_City_Weather) |[Jesse Bridge](https://github.com/jessebridge) |
|[DOH DIG](DOH-Dig/) | [Ryan](https://github.com/awsumco) |
|[Database-As-Storage](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Database-As-Storage) | [Bhargav Kuvadiya](https://github.com/techdobz) |
|[Directory Tree Visualizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory_Tree_Generator) | [Harpreet Singh Saluja](https://github.com/hssaluja25/) |
|[Directory organizer](Directory-organizer) | [Athul P](https://github.com/athulpn) |
|[Download Page as PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Download-page-as-pdf)|[Jeremias Gomes](https://github.com/j3r3mias)|
|[Elasticsearch snapshot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/elastic-snapshot) | [Joe Ryan](https://github.com/joeryan) |
|[English Theasaurus](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/English_Theasauras/) | [Ansh Dhingra](https://github.com/anshdhinhgra47) |
|[Excel Files Merger](Excel_Files_Merger) | [Andrei N](https://github.com/Andrei-Niculae)|
|[Excel to List](Excel_to_ListofList) | [Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Extended_ip_address_info](extended_ip_address_info) | [hafpaf](https://github.com/hafpaf)|
|[Fibonacci_Sequence_Generator](Fibonacci_Sequence_Generator) | [John Wesley Kommala](https://github.com/JohnWesleyK)|
|[File explorer](File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)|
|[File Sharing Bot](File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)|
|[Face Recognition](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Face_recognition)|[LOKESH KHURANA](https://github.com/theluvvkhurana)|
|[Fibonacci_Sequence_Generator](Fibonacci_Sequence_Generator) | [John Wesley Kommala](https://github.com/JohnWesleyK)|
|[File Carving](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File_Carving) | [Yeryeong Kim](https://github.com/icarusicarus/) |
|[File Encrypt Decrypt](file-encrypt-decrypt)|[Aditya Arakeri](https://github.com/adityaarakeri)|
|[FileMagic Organizer](./FileMagic_Organizer)|[malivinayak](https://github.com/malivinayak)|
|[File Organizer](File-Organizer)|[Ayush Bhardwaj](https://github.com/hastagAB)|
|[File Sharing Bot](File-Sharing-Bot) | [Darshan Patel](https://github.com/DarshanPatel11)|
|[File explorer](File-Explorer-Dialog-Box) | [Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)|
|[Find PhoneNumber in String](Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)|
|[Flash card quizzer](Flash-card-Challenge) |[Utkarsh Sharma](https://github.com/Utkarsh1308) |
|[Frammed text generator](FramedText) | [jcdwalle](https://github.com/jcdwalle)|
|[Gmail Mailing Script](mailing) |[mayank-kapur](https://github.com/kapurm17) |
|[Handwrting DNN recognizer](Handwriting_Recognizer) |[Chris]() |
|[HTML Table to List](HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Image circle formatter](Image-Circulator) |[Berk Gureken](https://github.com/bureken) |
|[Image To PDF](images2pdf)|[msaoudallah](https://github.com/msaoudallah)|
|[Instadp Web Scrapper](InstadpShower)|[Psychiquest](https://github.com/psychiquest)|
|[Keylogger](Keylogger) |[Preet Mishra](https://github.com/preetmishra) |
|[Minecraft Server in background](Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)|
|[Own IP locator](Location_Of_Own_IP_Adress)|[Chris]()|
|[Port Scanner](Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)|
|[Python Algebra Solver](Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)|
|[Random name generator](Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)|
|[Random Password Generators](Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)|
|[Server Ping](Ping_Server)|[prince]()|
|[Signature photo to PNG converter](signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)|
|[Simple Webpage Parser](SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Slideshare downloader](Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)|
|[SMS your location](SmsYourLocation)|[prince]()|
|[Squid installer for Ubuntu](Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()|
|[Subtitle downloader](Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)|
|[Take Screenshot](Take_screenshot)|[Moad Mohammed Elhebri](https://github.com/moadmmh)|
|[To Do Bot](To%20Do%20Bot) | [Darshan Patel](https://github.com/DarshanPatel11)|
|[Upload Files to S3](Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)|
|[Vinegère Cipher](vigenere_cipher)|[victoni](https://github.com/victoni)|
|[Web proxy](Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)|
|[Website blocker](Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)|
|[Website Url Detector](Website_Url_Detector)|[sonniki](https://github.com/sonniki)|
|[Word Frequency Counter](Word_Frequency_Counter)|[sonniki](https://github.com/sonniki)|
|[Word generator](Word-generator)|[TGLIDE](https://github.com/TGlide)|
|[Work log generator](Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)|
|[Youtube video downloader](Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)|
|[Zabbix API](zabbix_api)|[msg4sunny](https://github.com/msg4sunny)|
|[Zip password cracker](zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)|
|[CLI Calculator](cli_calculator)|[Willian GL](https://github.com/williangl) |
|[Find PhoneNumber in String](Find-PhoneNumber-in-String)|[Austin Zuniga](https://github.com/AustinZuniga)|
|[IMDB TV Series Info Extractor](imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) |
|[Yoda-speak Translator](speak_like_yoda)|[sonniki](https://github.com/sonniki) |
|[Medium Article Downloader](medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)|
|[RSA Key Pair Generator](RSA-key-pairs) | [Aditya Parikh](https://github.com/obiwan69) |
|[Clean_up_photo](Clean_up_photo_directory)|[sritanmay001](https://github.com/sritanmy001)|
|[PyRecorder](PyRecorder)|[Rocky Jain](https://github.com/jainrocky)|
|[Pretty CSV](Pretty-CSV)|[Frizz925](https://github.com/Frizz925)|
|[File Organizer](File-Organizer)|[Ayush Bhardwaj](https://github.com/hastagAB)|
|[send_whatsapp_message](send_whatsapp_message)|[Mukesh Prasad](https://github.com/mukeshprasad)|
|[YTS Torrents](yts_torrents)|[Mayank Nader](https://github.com/makkoncept)|
|[COVID visualiser (real-time) ](covdi_visualiser)|[Tushar Gupta](https://github.com/tushar5526)|
|[Random_Email_Generator](Random_Email_Generator)|[Shubham Garg](https://github.com/shub-garg)|
|[WiFi Password Viewer](Wifi-Password)|[Sagar Patel](https://github.com/sagar627)|
|[Tambola_Ticket_Generator](Tambola_Ticket_Generator)|[Amandeep_Singh](https://github.com/Synster)|
| [Py_Cleaner](Py_Cleaner) | [Abhishek Dobliyal](https://github.com/Abhishek-Dobliyal)|
|[Send messages to sqs in parallel](send_sqs_messages_in_parallel)|[Jinam Shah](https://github.com/jinamshah)|
|[Codeforces Checker](codeforcesChecker)|[Jinesh Parakh](https://github.com/jineshparakh)|
|[Folder Locker and hider](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Folder%20Locker%20%26%20Hider)|[Prajjwal Pathak](https://github.com/pyguru123)|
|[Folder Manager](Folder_Manager)|[Harsh Raj](https://github.com/DeadProgrammer0)|
|[Frammed text generator](FramedText) | [jcdwalle](https://github.com/jcdwalle)|
|[Get Time By TimeZone](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Get_Time_TimezoneWise)|[Parth Shah](https://github.com/codingis4noobs) |
|[git_automation](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/git_automation)| [loge1998](https://github.com/loge1998)|
|[Github repo creator](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Git_repo_creator)|[Harish Tiwari ](https://github.com/optimist2309)|
|[Remove-Duplicate-Files](Remove-Duplicate-Files)|[Aayushi Varma](https://github.com/aayuv17)|
|[PDF2text](PDF2text)|[QuangPH](https://github.com/quangph-1686a)|
|[Image Watermarker (batch)](imageWatermarker)|[Remco Halman](https://github.com/remcohalman)|
|[Folder Manager](Folder_Manager)|[Harsh Raj](https://github.com/DeadProgrammer0)|
|[IMDBQuerier](IMDBQuerier)|[Burak Bekci](https://github.com/Bekci)|
|[URL shortener](url_shortener)|[Sam Ebison](https://github.com/ebsa491)|
|[2048](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/2048)|[Krunal](https://github.com/gitkp11)|
|[Spotify Downloader](spotify_downloader)|[Sagar Patel](https://github.com/sagar627)|
|[Download Page as PDF](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Download-page-as-pdf)|[Jeremias Gomes](https://github.com/j3r3mias)|
|[JSON file to YAML convertor](https://github.com/saksham117/Awesome-Python-Scripts/tree/master/json-to-yaml)|[Saksham Basandrai](https://github.com/saksham117)|
|[Independent RSA Communication Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Communication)|[Miguel Santos](https://github.com/wi6n3l)|
|[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/GithubBot)|[Abhilasha](https://github.com/Abhilasha06)|
|[Translate CLI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TranslateCLI)|[Rodrigo Oliveira](https://github.com/rodrigocam)|
|[Rock-Paper-Scissor Game](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Rock-Paper-Scissor)|[Punit Sakre](https://github.com/punitsakre23)|
|[Folder Locker and hider](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Folder%20Locker%20%26%20Hider)|[Prajjwal Pathak](https://github.com/pyguru123)|
|[Image Compressor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image_Compressor)|[Prathima Kadari](https://github.com/prathimacode-hub)|
|[Test Your Internet Speed](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TestMyInternetSpeed)|[TheSmartDeveloperr](https://github.com/thesmartdeveloperr)|
|[Plagiarism_detector](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Plagiarism_detector)|[Akshita Singhal](https://github.com/akshitasinghal4444)|
|[csv_to_json](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/csv_to_json)|[MoiZ](https://github.com/TechBoyy6)|
|[Battery_notification](https://github.com/hastagABAwesome-Python-Scripts/Battery_notification/)|[Krishna Sharma](https://github.com/krishnasharma1386)|
|[Steg_Tool](https://github.com/hastagABAwesome-Python-Scripts/Steg_Tool/)|[Shankar JP](https://github.com/shankarjp)|
| [Directory Tree Visualizer](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Directory_Tree_Generator) | [Harpreet Singh Saluja](https://github.com/hssaluja25/) |
|[Pressure_Converter](https://github.com/E-wave112/Awesome-Python-Scripts/tree/master/Pressure_Converter)|[E-Wave](https://github.com/E-wave112)|
| [File Carving](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/File_Carving) | [Yeryeong Kim](https://github.com/icarusicarus/) |
|[Google Meet Joiner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/google_meet_joiner)|[JohanSanSebastian](https://github.com/JohanSanSebastian)|
|[Pdf to AudioBook Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PdfToAudio)|[Ayesha Gull](https://github.com/ayeshag7/)|
|[Countdown](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Countdown)|[Jeremias Gomes](https://github.com/j3r3mias)|
|[Github Review Bot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github-Review-Bot)|[Gaurav Giri](https://github.com/gaurovgiri)|
|[GithubBot](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Github_Bot)|[Abhilasha](https://github.com/Abhilasha06)|
|[Gmail Mailing Script](mailing) |[mayank-kapur](https://github.com/kapurm17) |
|[Google Meet Joiner](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/google_meet_joiner)|[JohanSanSebastian](https://github.com/JohanSanSebastian)|
|[HTML Table to List](HTML_Table_to_List) | [Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Handwrting DNN recognizer](Handwriting_Recognizer) |[Chris]() |
|[Harry Potter Cloak](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Harry-Potter-Cloak) | [thesmartdeveloperr](https://github.com/thesmartdeveloperr)|
|[IMDB TV Series Info Extractor](imdb_episode_ratings)|[Yash Raj Sarrof](https://github.com/yashYRS) |
|[IMDBQuerier](IMDBQuerier)|[Burak Bekci](https://github.com/Bekci)|
|[IP Address ](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/ipaddress)|[Xenium](https://github.com/xeniumcode)|
|[Image Compressor](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Image_Compressor)|[Prathima Kadari](https://github.com/prathimacode-hub)|
|[Image To PDF](images2pdf)|[msaoudallah](https://github.com/msaoudallah)|
|[Image Watermarker (batch)](imageWatermarker)|[Remco Halman](https://github.com/remcohalman)|
|[Image circle formatter](Image-Circulator) |[Berk Gureken](https://github.com/bureken) |
|[Independent RSA Communication Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Communication)|[Miguel Santos](https://github.com/wi6n3l)|
|[Instadp Web Scrapper](InstadpShower)|[Psychiquest](https://github.com/psychiquest)|
|[Instagram Video Downloader](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/insta_video_downloader)|[Shobhit Bhosure](https://github.com/shobhit99) |
|[JSON file to YAML convertor](https://github.com/saksham117/Awesome-Python-Scripts/tree/master/json-to-yaml)|[Saksham Basandrai](https://github.com/saksham117)|
|[Keylogger](Keylogger) |[Preet Mishra](https://github.com/preetmishra) |
|[Medium Article Downloader](medium_article_downloader)|[coolsonu39](https://github.com/coolsonu39)|
|[Minecraft Server in background](Minecraft_server_in_background)|[Max von Forell](https://github.com/mvforell)|
|[Own IP locator](Location_Of_Own_IP_Adress)|[Chris]()|
|[PDF2text](PDF2text)|[QuangPH](https://github.com/quangph-1686a)|
|[PDFsplitter](PDFsplitter)|[Prathamesh-Ghatole](https://github.com/Prathamesh-Ghatole)|
|[PX to REM](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PX-to-REM)|[Atthaphon Urairat](https://github.com/uatthaphon) |
|[Pdf to AudioBook Converter](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/PdfToAudio)|[Ayesha Gull](https://github.com/ayeshag7/)|
|[Plagiarism_detector](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Plagiarism_detector)|[Akshita Singhal](https://github.com/akshitasinghal4444)|
|[Port Scanner](Port_Scanner)|[Plutoberth](https://github.com/Plutoberth)|
|[Pressure_Converter](https://github.com/E-wave112/Awesome-Python-Scripts/tree/master/Pressure_Converter)|[E-Wave](https://github.com/E-wave112)|
|[Pretty CSV](Pretty-CSV)|[Frizz925](https://github.com/Frizz925)|
|[PyRecorder](PyRecorder)|[Rocky Jain](https://github.com/jainrocky)|
|[py_based_music_player](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/py_based_music_player) | [Bhargav Kuvadiya](https://github.com/techdobz) |
|[Py_Cleaner](Py_Cleaner) | [Abhishek Dobliyal](https://github.com/Abhishek-Dobliyal)|
|[Python Algebra Solver](Algebra-Solver)|[Sengxay Xayachack](https://github.com/frankxayachack)|
|[RSA Algorithm](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/RSA_Algorithm)|[Chinmay Rane](https://github.com/Chinmayrane16)|
|[RSA Key Pair Generator](RSA-key-pairs) | [Aditya Parikh](https://github.com/obiwan69) |
|[Random Password Generators](Random_Password_Generator)| [Hafpaf](https://github.com/hafpaf) and [Renderer-RCT2](https://github.com/Renderer-RCT2)|
|[Random name generator](Random_Names_Generator)| [Ayush Bhardwaj](https://github.com/hastagAB)|
|[Random_Email_Generator](Random_Email_Generator)|[Shubham Garg](https://github.com/shub-garg)|
|[Remove-Duplicate-Files](Remove-Duplicate-Files)|[Aayushi Varma](https://github.com/aayuv17)|
|[Rock-Paper-Scissor Game](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Rock-Paper-Scissor)|[Punit Sakre](https://github.com/punitsakre23)|
|[send_whatsapp_message](send_whatsapp_message)|[Mukesh Prasad](https://github.com/mukeshprasad)|
|[Send messages to sqs in parallel](send_sqs_messages_in_parallel)|[Jinam Shah](https://github.com/jinamshah)|
|[Server Ping](Ping_Server)|[prince]()|
|[Signature photo to PNG converter](signature2png)|[Rodolfo Ferro](https://github.com/RodolfoFerro)|
|[Simple Webpage Parser](SimpleWebpageParser)|[Nitish Srivastava](https://github.com/nitish-iiitd)|
|[Slideshare downloader](Slideshare-Downloader)|[Chris Goes](https://github.com/GhostofGoes)|
|[SMS your location](SmsYourLocation)|[prince]()|
|[Spotify Downloader](spotify_downloader)|[Sagar Patel](https://github.com/sagar627)|
|[Squid installer for Ubuntu](Squid-Proxy-Installer-for-Ubuntu16)|[Berkay Demir]()| |
|[SSH Host adder](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/SSH_Host_Adder)|[NinoDoko](https://github.com/NinoDoko)|
|[Steg_Tool](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Steg_Tool/)|[Shankar JP](https://github.com/shankarjp)|
|[sudoku-solver](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/sudoku-solver) | [Rishabh Umrao](https://github.com/ayedaemon) |
|[Subtitle downloader](Subtitle-downloader)|[Kaushlendra Pratap](https://github.com/kaushl1998)|
|[TTS - Text to Speech Mp3](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TTS_Text_to_Speech_Mp3)|[Antonio Andrade](https://github.com/xAndrade)|
|[Take Screenshot](Take_screenshot)|[Moad Mohammed Elhebri](https://github.com/moadmmh)|
|[Tambola_Ticket_Generator](Tambola_Ticket_Generator)|[Amandeep_Singh](https://github.com/Synster)|
|[Test Your Internet Speed](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TestMyInternetSpeed)|[TheSmartDeveloperr](https://github.com/thesmartdeveloperr)|
|[TicTacToe AI and 2 players](https://github.com/ShadowHunter15/Awesome-Python-Scripts/tree/master/TicTacToe_AI_and_2_players) | [Omar Sameh](https://github.com/ShadowHunter15) |
|[To Do Bot](To%20Do%20Bot) | [Darshan Patel](https://github.com/DarshanPatel11)|
|[Top_News](Top_News)|[Attupatil](https://github.com/Attupatil)|
|[Translate CLI](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/TranslateCLI)|[Rodrigo Oliveira](https://github.com/rodrigocam)|
|[URL shortener](url_shortener)|[Sam Ebison](https://github.com/ebsa491)|
|[Upload Files to S3](Upload_files_to_s3)|[Jayram Nai](https://github.com/jramnai)|
|[Vinegère Cipher](vigenere_cipher)|[victoni](https://github.com/victoni)|
|[Web proxy](Proxy-Request)|[Nikhil Kumar Singh](https://github.com/nikhilkumarsingh)|
|[Website Url Detector](Website_Url_Detector)|[sonniki](https://github.com/sonniki)|
|[Website blocker](Website-Blocker)|[Ayush Bhardwaj](https://github.com/hastagAB)|
|[WiFi Password Viewer](Wifi-Password)|[Sagar Patel](https://github.com/sagar627)|
|[Wikipedia-Search](https://github.com/hastagAB/Awesome-Python-Scripts/tree/master/Wikipedia-Search)|[Nissaar](https://github.com/Nissaar) |
|[Word Frequency Counter](Word_Frequency_Counter)|[sonniki](https://github.com/sonniki)|
|[Word generator](Word-generator)|[TGLIDE](https://github.com/TGlide)|
|[Work log generator](Work_Log_Generator)|[Maël Pedretti](https://github.com/73VW)|
|[X Scrapper](X_Scrapper)|[Shreeram](https://github.com/iamshreeram)|
|[YTS Torrents](yts_torrents)|[Mayank Nader](https://github.com/makkoncept)|
|[Yoda-speak Translator](speak_like_yoda)|[sonniki](https://github.com/sonniki) |
|[Youtube video downloader](Youtube_Video_Downloader)|[Christopher He](https://github.com/hecris)|
|[Zabbix API](zabbix_api)|[msg4sunny](https://github.com/msg4sunny)|
|[Zip password cracker](zip_password_cracker)|[umar abdullahi](https://github.com/umarbrowser)|
|[Task Scheduler](Task-Scheduler)|[heysagnik](https://github.com/heysagnik)|
|[PDF Password Decypter](PDF_Password_Decrypter)|[parthasdey2304](https://github.com/parthasdey2304)|
## How to use:
- Clone/Download the directory and navigate to each folder. Or...
@ -249,15 +199,15 @@ Remember to star the repo if you love the scripts~ :wink:
- Only One Commit per PR is Adviced.
# If you like the project:
- Star this Repo - [Awesome Python Scripts](https://github.com/hastagAB/Awesome-Python-Scripts)
- **Star this Repo - [Awesome Python Scripts](https://github.com/hastagAB/Awesome-Python-Scripts)**
- Follow me on GitHub - [Ayush Bhardwaj](https://github.com/hastagAB)
- **Follow me on GitHub - [Ayush Bhardwaj](https://github.com/hastagAB)**
# Want to connect with me?
- [LinkedIn](https://www.linkedin.com/in/hastagab/)
- [Twitter](https://twitter.com/HastagAB)
- [Facebook](https://www.facebook.com/SirHastagAB)
- [Instagram](https://www.instagram.com/sirhastagab/)
## Want to Connect with Me?
[<img src="https://content.linkedin.com/content/dam/me/business/en-us/amp/brand-site/v2/bg/LI-Bug.svg.original.svg" height="30px" alt="Linkedin">](https://www.linkedin.com/in/hastagab/)
[<img src="https://static.dezeen.com/uploads/2023/07/x-logo-twitter-elon-musk_dezeen_2364_col_0.jpg" height="30px" alt="X/Twitter">](https://twitter.com/HastagAB)
[<img src="https://w7.pngwing.com/pngs/561/460/png-transparent-fb-facebook-facebook-logo-social-media-icon-thumbnail.png" height="30px" alt="Facebook">](https://www.facebook.com/SirHastagAB)
[<img src="https://static.cdninstagram.com/rsrc.php/v3/yI/r/VsNE-OHk_8a.png" height="31px" alt="Instagram">](https://www.instagram.com/sirhastagab/)
[![](https://img.shields.io/badge/Made%20With%20❤%20By-HastagAB-red)](https://github.com/hastagAB)

85
Task-Scheduler/Readme.md Normal file
View File

@ -0,0 +1,85 @@
# Task Scheduler
This Python script, `task_scheduler.py`, is a simple command-line task management application that allows users to add, view, and delete tasks with due dates. The application stores task data in a JSON file.
## How to Use
1. **Installation**:
- Make sure you have Python installed on your system.
2. **Run the Application**:
- Open a terminal or command prompt.
- Navigate to the directory where `task_scheduler.py` is located.
```
$ cd /path/to/directory
```
- Run the script:
```
$ python task_scheduler.py
```
3. **Menu Options**:
- The application provides the following menu options:
- **Add Task**: Allows you to add a new task with a name and due date (in YYYY-MM-DD format).
- **View Tasks**: Displays a list of tasks with their names and due dates.
- **Delete Task**: Lets you delete a task by specifying its number in the list.
- **Quit**: Exits the application.
4. **Data Storage**:
- The tasks are stored in a JSON file named `tasks.json` in the same directory as the script.
5. **Error Handling**:
- The application handles various errors, such as invalid date format or task numbers.
## Example Usage
1. **Add Task**:
- Choose option 1.
- Enter a task name.
- Enter the due date in YYYY-MM-DD format.
2. **View Tasks**:
- Choose option 2 to see a list of added tasks with their due dates.
3. **Delete Task**:
- Choose option 3.
- Enter the number of the task you want to delete.
4. **Quit**:
- Choose option 4 to exit the application.
## Data Persistence
The application loads tasks from the `tasks.json` file when it starts and saves tasks back to the file after any additions or deletions. This ensures that your tasks are retained even when the application is closed and reopened.
## Error Handling
The application checks for invalid date formats and incorrect task numbers, providing appropriate error messages to guide the user.
## Important Notes
- Please ensure that you have Python installed on your system.
- Make sure to provide dates in the specified format (YYYY-MM-DD).
- Be cautious when deleting tasks, as this action is irreversible.
## Author
This Python Task Scheduler was created by Sagnik Sahoo.
Feel free to customize and extend this application to suit your needs. Enjoy managing your tasks!

View File

@ -0,0 +1 @@
pytz==2021.3

View File

@ -0,0 +1,74 @@
import json
import os
import datetime
# Define the data file to store tasks
TASKS_FILE = "tasks.json"
# Load tasks from the data file (if it exists)
tasks = []
if os.path.exists(TASKS_FILE):
with open(TASKS_FILE, "r") as file:
tasks = json.load(file)
def save_tasks():
# Save tasks to the data file
with open(TASKS_FILE, "w") as file:
json.dump(tasks, file)
def add_task():
task_name = input("Enter the task name: ")
due_date = input("Enter the due date (YYYY-MM-DD): ")
try:
due_date = datetime.datetime.strptime(due_date, "%Y-%m-%d").date()
except ValueError:
print("Invalid date format. Please use YYYY-MM-DD.")
return
tasks.append({"name": task_name, "due_date": due_date})
save_tasks()
print(f"Task '{task_name}' added successfully!")
def view_tasks():
print("Tasks:")
for idx, task in enumerate(tasks, start=1):
print(f"{idx}. {task['name']} (Due: {task['due_date']})")
def delete_task():
view_tasks()
task_index = input("Enter the task number to delete: ")
try:
task_index = int(task_index)
if 1 <= task_index <= len(tasks):
deleted_task = tasks.pop(task_index - 1)
save_tasks()
print(f"Task '{deleted_task['name']}' deleted successfully!")
else:
print("Invalid task number.")
except ValueError:
print("Invalid input. Please enter a valid task number.")
while True:
print("\nTask Scheduler Menu:")
print("1. Add Task")
print("2. View Tasks")
print("3. Delete Task")
print("4. Quit")
choice = input("Enter your choice: ")
if choice == "1":
add_task()
elif choice == "2":
view_tasks()
elif choice == "3":
delete_task()
elif choice == "4":
break
else:
print("Invalid choice. Please choose a valid option.")
print("Goodbye!")

View File

@ -1,2 +1,2 @@
requests==2.24.0
requests==2.31.0
bs4==0.0.1

View File

@ -1,7 +1,7 @@
requests==2.20.0
urllib3==1.26.5
requests==2.20.0
urllib3==1.26.5
requests==2.31.0
urllib3==1.26.18
requests==2.31.0
urllib3==1.26.18
py4j==0.10.4
BeautifulSoup==3.2.0
numpy==1.22.0

View File

@ -1,3 +1,3 @@
argparse
re
requests==2.22.0
requests==2.31.0

22
X_Scrapper/README.md Normal file
View File

@ -0,0 +1,22 @@
# X Scrapper
Use to scrape the tweets from given username (including the metadata of the tweet - location of user, views, likes etc.) using `tweepy`.
## Use case
1. To analyze the (sentiment trend of the given user)[https://github.com/iamshreeram/twitter-senti-analyzer] over the period of time (on given topic or anything)
2. Further analysis of user behaviour using geo-location, time of tweets,
### Requirements
Python 3.xx
tweepy
```bash
pip install tweepy
```
### Usage
python main.py <twitter_username>
### Note :
1. This requires you to have the consumer key, consumer secret, access key and access secret from your x.com account

View File

@ -0,0 +1 @@
tweepy==4.3.0

77
X_Scrapper/x_scraper.py Normal file
View File

@ -0,0 +1,77 @@
#!/usr/bin/env python
# encoding: utf-8
import sys
try:
import tweepy #https://github.com/tweepy/tweepy
except ImportError:
print("You'll need tweepy instaled on your system.")
sys.exit()
try:
import csv
except ImportError:
print("You'll need the python csv module instaled on your system.")
sys.exit()
consumer_key = "xxx"
consumer_secret = "yyy"
access_key = "aa-zzzz"
access_secret = "bbb"
def get_all_tweets(screen_name):
if (consumer_key == ""):
print("You need to set up the script first. Edit it and add your keys.")
return
#Twitter only allows access to a users most recent 3240 tweets with this method
#authorize x, initialize tweepy
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)
#initialize a list to hold all the tweepy Tweets
alltweets = []
#make initial request for most recent tweets (200 is the maximum allowed count)
new_tweets = api.user_timeline(screen_name = screen_name,count=200)
#save most recent tweets
alltweets.extend(new_tweets)
#save the id of the oldest tweet less one
oldest = alltweets[-1].id - 1
#keep grabbing tweets until there are no tweets left to grab
while len(new_tweets) > 0:
print("getting tweets before %s" % (oldest))
#all subsiquent requests use the max_id param to prevent duplicates
new_tweets = api.user_timeline(screen_name = screen_name,count=200,max_id=oldest)
#save most recent tweets
alltweets.extend(new_tweets)
#update the id of the oldest tweet less one
oldest = alltweets[-1].id - 1
print("...%s tweets downloaded so far" % (len(alltweets)))
#transform the tweepy tweets into a 2D array that will populate the csv
outtweets = [[tweet.id_str, tweet.created_at, tweet.text] for tweet in alltweets]
#write the csv
with open('%s_tweets.csv' % screen_name, 'w') as f:
writer = csv.writer(f)
writer.writerow(["id","created_at","text"])
writer.writerows(outtweets)
pass
if __name__ == '__main__':
if (len(sys.argv) == 2):
get_all_tweets(sys.argv[1])
else:
print("Please add the x account you want to back up as an argument.")

View File

@ -1,11 +1,86 @@
from pytube import YouTube
link = input('https://youtu.be/6M1rP2r672o')
yt = Youtube(link)
yt.streams.first().download()
print('downloaded', link)
import os
import string
from pytube import Playlist, YouTube
from moviepy.editor import AudioFileClip
def MP4ToMP3(mp4, mp3):
FILETOCONVERT = AudioFileClip(mp4)
FILETOCONVERT.write_audiofile(mp3)
FILETOCONVERT.close()
def download_youtube_video(url, folder_path, quality, media_type,j):
# Create a YouTube object
yt = YouTube(url)
# Remove invalid characters from the title
valid_chars = "-_.() %s%s" % (string.ascii_letters, string.digits)
title = ''.join(c for c in yt.title if c in valid_chars)
# Get the streams based on the media type
if media_type == 'audio':
audio_stream = yt.streams.get_audio_only()
# Check if the stream is not None
if audio_stream is not None:
# Download the stream
try:
print(f"Downloading...")
audio_stream.download(output_path=folder_path, filename="temp_file.mp4")
print(f"Download completed!")
input_file = os.path.join(folder_path, f"temp_file.mp4")
output_file = os.path.join(folder_path, f"{title}.mp3")
print("Converting to mp3...")
MP4ToMP3(input_file, output_file)
print("Conversion completed!")
os.rename(output_file,f'{folder_path}\{title}.mp3')
os.remove(input_file)
except Exception as e:
print(e)
else:
print("No audio stream was found.")
else:
streams = yt.streams.filter(progressive=True)
# Get the stream based on the quality
stream = streams.filter(resolution=quality).first()
# Check if the stream is not None
if stream is not None:
# Download the stream
print(f"Downloading...")
stream.download(output_path=folder_path)
print(f"Download completed!")
else:
print(f"No stream with quality {quality} was found.")
def download_youtube_playlist(playlist_url,folder_path,quality,media_type):
try:
playlist = Playlist(playlist_url)
i = 0
for url in playlist:
video_title = YouTube(url).title
video_size = YouTube(url).streams.filter(resolution=quality).first().filesize/(1024*1024)
print(f"Video title: {video_title} \nVideo size: {'%.2f' % video_size} MB")
download_youtube_video(url,folder_path,quality,media_type,i)
print("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++")
i += 1
except Exception as e:
print(e)
playlist_url = input('Enter the URL of the YouTube playlist: ')
folder_path = input('Enter the path of the folder where you want to save the videos: ')
media_type = input('Enter the media type (audio or video): ')
if media_type == 'video':
quality = input('Enter the quality of the video (e.g. 720p, 1080p): ')
else:
quality = None
# Create the folder if it doesn't exist
if not os.path.exists(folder_path):
os.makedirs(folder_path)
# Download the playlist
download_youtube_playlist(playlist_url,folder_path,quality,media_type)

View File

@ -1,6 +1,6 @@
beautifulsoup4==4.8.1
chromedriver-binary==81.0.4044.69.0
colorama==0.4.3
requests==2.22.0
requests==2.31.0
selenium==3.141.0
termcolor==1.1.0

View File

@ -1,5 +1,5 @@
certifi==2022.12.7
certifi==2023.7.22
chardet==3.0.4
idna==2.10
requests==2.24.0
urllib3==1.26.5
requests==2.31.0
urllib3==1.26.18

View File

@ -24,11 +24,11 @@
},
"attrs": {
"hashes": [
"sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836",
"sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99"
"sha256:1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04",
"sha256:6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015"
],
"markers": "python_version >= '3.6'",
"version": "==22.2.0"
"markers": "python_version >= '3.7'",
"version": "==23.1.0"
},
"cffi": {
"hashes": [
@ -101,54 +101,56 @@
},
"cryptography": {
"hashes": [
"sha256:0f8da300b5c8af9f98111ffd512910bc792b4c77392a9523624680f7956a99d4",
"sha256:35f7c7d015d474f4011e859e93e789c87d21f6f4880ebdc29896a60403328f1f",
"sha256:5aa67414fcdfa22cf052e640cb5ddc461924a045cacf325cd164e65312d99502",
"sha256:5d2d8b87a490bfcd407ed9d49093793d0f75198a35e6eb1a923ce1ee86c62b41",
"sha256:6687ef6d0a6497e2b58e7c5b852b53f62142cfa7cd1555795758934da363a965",
"sha256:6f8ba7f0328b79f08bdacc3e4e66fb4d7aab0c3584e0bd41328dce5262e26b2e",
"sha256:706843b48f9a3f9b9911979761c91541e3d90db1ca905fd63fee540a217698bc",
"sha256:807ce09d4434881ca3a7594733669bd834f5b2c6d5c7e36f8c00f691887042ad",
"sha256:83e17b26de248c33f3acffb922748151d71827d6021d98c70e6c1a25ddd78505",
"sha256:96f1157a7c08b5b189b16b47bc9db2332269d6680a196341bf30046330d15388",
"sha256:aec5a6c9864be7df2240c382740fcf3b96928c46604eaa7f3091f58b878c0bb6",
"sha256:b0afd054cd42f3d213bf82c629efb1ee5f22eba35bf0eec88ea9ea7304f511a2",
"sha256:ced4e447ae29ca194449a3f1ce132ded8fcab06971ef5f618605aacaa612beac",
"sha256:d1f6198ee6d9148405e49887803907fe8962a23e6c6f83ea7d98f1c0de375695",
"sha256:e124352fd3db36a9d4a21c1aa27fd5d051e621845cb87fb851c08f4f75ce8be6",
"sha256:e422abdec8b5fa8462aa016786680720d78bdce7a30c652b7fadf83a4ba35336",
"sha256:ef8b72fa70b348724ff1218267e7f7375b8de4e8194d1636ee60510aae104cd0",
"sha256:f0c64d1bd842ca2633e74a1a28033d139368ad959872533b1bab8c80e8240a0c",
"sha256:f24077a3b5298a5a06a8e0536e3ea9ec60e4c7ac486755e5fb6e6ea9b3500106",
"sha256:fdd188c8a6ef8769f148f88f859884507b954cc64db6b52f66ef199bb9ad660a",
"sha256:fe913f20024eb2cb2f323e42a64bdf2911bb9738a15dba7d3cce48151034e3a8"
"sha256:0d09fb5356f975974dbcb595ad2d178305e5050656affb7890a1583f5e02a306",
"sha256:23c2d778cf829f7d0ae180600b17e9fceea3c2ef8b31a99e3c694cbbf3a24b84",
"sha256:3fb248989b6363906827284cd20cca63bb1a757e0a2864d4c1682a985e3dca47",
"sha256:41d7aa7cdfded09b3d73a47f429c298e80796c8e825ddfadc84c8a7f12df212d",
"sha256:42cb413e01a5d36da9929baa9d70ca90d90b969269e5a12d39c1e0d475010116",
"sha256:4c2f0d35703d61002a2bbdcf15548ebb701cfdd83cdc12471d2bae80878a4207",
"sha256:4fd871184321100fb400d759ad0cddddf284c4b696568204d281c902fc7b0d81",
"sha256:5259cb659aa43005eb55a0e4ff2c825ca111a0da1814202c64d28a985d33b087",
"sha256:57a51b89f954f216a81c9d057bf1a24e2f36e764a1ca9a501a6964eb4a6800dd",
"sha256:652627a055cb52a84f8c448185922241dd5217443ca194d5739b44612c5e6507",
"sha256:67e120e9a577c64fe1f611e53b30b3e69744e5910ff3b6e97e935aeb96005858",
"sha256:6af1c6387c531cd364b72c28daa29232162010d952ceb7e5ca8e2827526aceae",
"sha256:6d192741113ef5e30d89dcb5b956ef4e1578f304708701b8b73d38e3e1461f34",
"sha256:7efe8041897fe7a50863e51b77789b657a133c75c3b094e51b5e4b5cec7bf906",
"sha256:84537453d57f55a50a5b6835622ee405816999a7113267739a1b4581f83535bd",
"sha256:8f09daa483aedea50d249ef98ed500569841d6498aa9c9f4b0531b9964658922",
"sha256:95dd7f261bb76948b52a5330ba5202b91a26fbac13ad0e9fc8a3ac04752058c7",
"sha256:a74fbcdb2a0d46fe00504f571a2a540532f4c188e6ccf26f1f178480117b33c4",
"sha256:a983e441a00a9d57a4d7c91b3116a37ae602907a7618b882c8013b5762e80574",
"sha256:ab8de0d091acbf778f74286f4989cf3d1528336af1b59f3e5d2ebca8b5fe49e1",
"sha256:aeb57c421b34af8f9fe830e1955bf493a86a7996cc1338fe41b30047d16e962c",
"sha256:ce785cf81a7bdade534297ef9e490ddff800d956625020ab2ec2780a556c313e",
"sha256:d0d651aa754ef58d75cec6edfbd21259d93810b73f6ec246436a21b7841908de"
],
"index": "pypi",
"version": "==39.0.1"
"version": "==41.0.3"
},
"importlib-metadata": {
"hashes": [
"sha256:7efb448ec9a5e313a57655d35aa54cd3e01b7e1fbcf72dce1bf06119420f5bad",
"sha256:e354bedeb60efa6affdcc8ae121b73544a7aa74156d047311948f6d711cd378d"
"sha256:1aaf550d4f73e5d6783e7acb77aec43d49da8017410afae93822cc9cca98c4d4",
"sha256:cb52082e659e97afc5dac71e79de97d8681de3aa07ff18578330904a9d18e5b5"
],
"markers": "python_version < '3.8'",
"version": "==6.0.0"
"version": "==6.7.0"
},
"more-itertools": {
"hashes": [
"sha256:250e83d7e81d0c87ca6bd942e6aeab8cc9daa6096d12c5308f3f92fa5e5c1f41",
"sha256:5a6257e40878ef0520b1803990e3e22303a41b5714006c32a3fd8304b26ea1ab"
"sha256:cabaa341ad0389ea83c17a94566a53ae4c9d07349861ecb14dc6d0345cf9ac5d",
"sha256:d2bc7f02446e86a68911e58ded76d6561eea00cddfb2a91e7019bbb586c799f3"
],
"markers": "python_version >= '3.7'",
"version": "==9.0.0"
"version": "==9.1.0"
},
"packaging": {
"hashes": [
"sha256:714ac14496c3e68c99c29b00845f7a2b85f3bb6f1078fd9f72fd20f0570002b2",
"sha256:b6ad297f8907de0fa2fe1ccbd26fdaf387f5f47c7275fedf8cce89f99446cf97"
"sha256:994793af429502c4ea2ebf6bf664629d07c1a9fe974af92966e4b8d2df7edc61",
"sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"
],
"markers": "python_version >= '3.7'",
"version": "==23.0"
"version": "==23.1"
},
"pluggy": {
"hashes": [
@ -183,11 +185,11 @@
},
"typing-extensions": {
"hashes": [
"sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa",
"sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e"
"sha256:440d5dd3af93b060174bf433bccd69b0babc3b15b1a8dca43789fd7f61514b36",
"sha256:b75ddc264f0ba5615db7ba217daeb99701ad295353c45f9e95963337ceeeffb2"
],
"markers": "python_version < '3.8'",
"version": "==4.4.0"
"version": "==4.7.1"
},
"wcwidth": {
"hashes": [
@ -198,11 +200,11 @@
},
"zipp": {
"hashes": [
"sha256:6c4fe274b8f85ec73c37a8e4e3fa00df9fb9335da96fb789e3b96b318e5097b3",
"sha256:a3cac813d40993596b39ea9e93a18e8a2076d5c378b8bc88ec32ab264e04ad02"
"sha256:112929ad649da941c23de50f356a2b5570c954b65150642bccdd66bf194d224b",
"sha256:48904fc76a60e542af151aded95726c1a5c34ed43ab4134b597665c86d7ad556"
],
"markers": "python_version >= '3.7'",
"version": "==3.12.1"
"version": "==3.15.0"
}
},
"develop": {}

View File

@ -1 +1 @@
Pillow==9.3.0
Pillow==10.2.0

View File

@ -1,8 +1,8 @@
beautifulsoup4==4.9.3
certifi==2022.12.7
certifi==2023.7.22
chardet==3.0.4
idna==2.10
pkg-resources==0.0.0
requests==2.24.0
requests==2.31.0
soupsieve==2.0.1
urllib3==1.26.5
urllib3==1.26.18

View File

@ -1,5 +1,5 @@
certifi==2022.12.7
certifi==2023.7.22
chardet==3.0.4
idna==2.8
requests==2.22.0
urllib3==1.26.5
requests==2.31.0
urllib3==1.26.19