abstract-webtools 0.1.6.104__tar.gz → 0.1.6.106__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/PKG-INFO +1 -1
  2. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/setup.py +1 -1
  3. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/k2s_downloader.py +18 -9
  4. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools.egg-info/PKG-INFO +1 -1
  5. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/README.md +0 -0
  6. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/pyproject.toml +0 -0
  7. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/setup.cfg +0 -0
  8. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/__init__.py +0 -0
  9. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/abstract_usurpit.py +0 -0
  10. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/abstract_webtools.py +0 -0
  11. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/big_user_agent_list.py +0 -0
  12. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/domain_identifier.py +0 -0
  13. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/extention_list.py +0 -0
  14. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/find_dirs.py +0 -0
  15. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/main.py +0 -0
  16. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/__init__.py +0 -0
  17. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/allss//.py" +0 -0
  18. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/cipherManager.py +0 -0
  19. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/crawlManager.py +0 -0
  20. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/crawlmgr2.py +0 -0
  21. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/curlMgr.py +0 -0
  22. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/domainManager.py +0 -0
  23. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/dynamicRateLimiter.py +0 -0
  24. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/get_test.py +0 -0
  25. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/linkManager/__init__.py +0 -0
  26. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/linkManager/linkManager.py +0 -0
  27. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/mySocketClient.py +0 -0
  28. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/networkManager.py +0 -0
  29. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/requestManager/__init__.py +0 -0
  30. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/requestManager/requestManager.py +0 -0
  31. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/seleniumManager.py +0 -0
  32. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/soupManager/__init__.py +0 -0
  33. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/soupManager/asoueces.py +0 -0
  34. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/soupManager/soupManager.py +0 -0
  35. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/sslManager.py +0 -0
  36. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/tlsAdapter.py +0 -0
  37. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/urlManager/__init__.py +0 -0
  38. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/urlManager/urlManager.py +0 -0
  39. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/userAgentManager.py +0 -0
  40. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/videoDownloader.py +0 -0
  41. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/managers/videoDownloader2.py +0 -0
  42. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/soup_gui.py +0 -0
  43. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/url_grabber.py +0 -0
  44. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools/url_grabber_new.py +0 -0
  45. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools.egg-info/SOURCES.txt +0 -0
  46. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools.egg-info/dependency_links.txt +0 -0
  47. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools.egg-info/requires.txt +0 -0
  48. {abstract_webtools-0.1.6.104 → abstract_webtools-0.1.6.106}/src/abstract_webtools.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: abstract_webtools
3
- Version: 0.1.6.104
3
+ Version: 0.1.6.106
4
4
  Summary: Abstract Web Tools is a Python package that provides various utility functions for web scraping tasks. It is built on top of popular libraries such as `requests`, `BeautifulSoup`, and `urllib3` to simplify the process of fetching and parsing web content.
5
5
  Home-page: https://github.com/AbstractEndeavors/abstract_essentials/tree/main/abstract_webtools
6
6
  Author: putkoff
@@ -4,7 +4,7 @@ with open("README.md", "r", encoding="utf-8") as fh:
4
4
  long_description = fh.read()
5
5
  setuptools.setup(
6
6
  name='abstract_webtools',
7
- version='0.1.6.104',
7
+ version='0.1.6.106',
8
8
  author='putkoff',
9
9
  author_email='partners@abstractendeavors.com',
10
10
  description='Abstract Web Tools is a Python package that provides various utility functions for web scraping tasks. It is built on top of popular libraries such as `requests`, `BeautifulSoup`, and `urllib3` to simplify the process of fetching and parsing web content.',
@@ -11,6 +11,7 @@ from selenium.webdriver.support.ui import WebDriverWait
11
11
  from selenium.webdriver.support import expected_conditions as EC
12
12
  from abstract_security import *
13
13
  from abstract_webtools import *
14
+ from abstract_utilities import safe_dump_to_file,safe_load_from_json
14
15
  DOWNLOAD_DIR = os.path.abspath("./downloads")
15
16
  class K2SDownloader:
16
17
  def __init__(self,env_path=None,download_dir=None,json_file_path=None):
@@ -116,28 +117,36 @@ class dlsManager:
116
117
  def __init__(self, downloader):
117
118
  self.downloader = downloader
118
119
  self.json_file_path = self.downloader.json_file_path
119
- all_dls= None
120
+ all_dls = None
120
121
  if self.json_file_path:
121
122
  all_dls = safe_load_from_json(self.json_file_path)
122
- self.all_dls = all_dls or []
123
+ self.all_dls = all_dls or []
123
124
  self.last_data = None
125
+
124
126
  def is_prev_dl(self, data):
125
- if check_json_data(self.all_dls,data):
127
+ # Include metadata in data for duplicate checking
128
+ extended_data = data.copy()
129
+ if data.get('k2s'):
130
+ metadata = self.downloader.get_file_metadata(data['k2s'])
131
+ extended_data.update({
132
+ 'filename': metadata['filename'],
133
+ 'size': metadata['size']
134
+ })
135
+ if check_json_data(self.all_dls, extended_data):
126
136
  self.last_data = None
127
137
  return True
128
- self.last_data = data
138
+ self.last_data = extended_data
129
139
  return False
130
140
 
131
141
  def dl_k2s_link(self, k2s_link):
132
142
  if k2s_link:
133
143
  print(f"Downloading: {k2s_link}")
134
- self.downloader.download_file(k2s_link)
144
+ metadata = self.downloader.download_file(k2s_link)
135
145
  time.sleep(10)
136
- if self.json_file_path:
146
+ if metadata and self.json_file_path and self.last_data:
147
+ self.last_data.update(metadata) # Merge download metadata
137
148
  self.all_dls.append(self.last_data)
138
- safe_dump_to_file(data=self.all_dls,
139
- file_path=self.json_file_path)
140
-
149
+ safe_dump_to_file(data=self.all_dls, file_path=self.json_file_path)
141
150
 
142
151
  def get_soup(url):
143
152
  try:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: abstract_webtools
3
- Version: 0.1.6.104
3
+ Version: 0.1.6.106
4
4
  Summary: Abstract Web Tools is a Python package that provides various utility functions for web scraping tasks. It is built on top of popular libraries such as `requests`, `BeautifulSoup`, and `urllib3` to simplify the process of fetching and parsing web content.
5
5
  Home-page: https://github.com/AbstractEndeavors/abstract_essentials/tree/main/abstract_webtools
6
6
  Author: putkoff