datamule 2.0.0__tar.gz → 2.0.2__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 (75) hide show
  1. {datamule-2.0.0 → datamule-2.0.2}/PKG-INFO +1 -1
  2. {datamule-2.0.0 → datamule-2.0.2}/datamule/datamule/downloader.py +3 -3
  3. {datamule-2.0.0 → datamule-2.0.2}/datamule/sheet.py +21 -1
  4. {datamule-2.0.0 → datamule-2.0.2}/datamule.egg-info/PKG-INFO +1 -1
  5. {datamule-2.0.0 → datamule-2.0.2}/setup.py +1 -1
  6. {datamule-2.0.0 → datamule-2.0.2}/datamule/__init__.py +0 -0
  7. {datamule-2.0.0 → datamule-2.0.2}/datamule/config.py +0 -0
  8. {datamule-2.0.0 → datamule-2.0.2}/datamule/data/listed_filer_metadata.csv +0 -0
  9. {datamule-2.0.0 → datamule-2.0.2}/datamule/datamule/__init__.py +0 -0
  10. {datamule-2.0.0 → datamule-2.0.2}/datamule/datamule/datamule_lookup.py +0 -0
  11. {datamule-2.0.0 → datamule-2.0.2}/datamule/datamule/datamule_mysql_rds.py +0 -0
  12. {datamule-2.0.0 → datamule-2.0.2}/datamule/datamule/sec_connector.py +0 -0
  13. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/__init__.py +0 -0
  14. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/document.py +0 -0
  15. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/__init__.py +0 -0
  16. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/atsn.py +0 -0
  17. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/cfportal.py +0 -0
  18. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/d.py +0 -0
  19. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/ex102_abs.py +0 -0
  20. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/ex99a_sdr.py +0 -0
  21. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/ex99c_sdr.py +0 -0
  22. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/ex99g_sdr.py +0 -0
  23. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/ex99i_sdr.py +0 -0
  24. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/information_table.py +0 -0
  25. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/nmfp.py +0 -0
  26. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/npx.py +0 -0
  27. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/onefourtyfour.py +0 -0
  28. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/ownership.py +0 -0
  29. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/proxy_voting_record.py +0 -0
  30. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/sbs.py +0 -0
  31. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/sbsef.py +0 -0
  32. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/schedule13.py +0 -0
  33. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/sdr.py +0 -0
  34. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/submission_metadata.py +0 -0
  35. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/ta.py +0 -0
  36. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/thirteenfhr.py +0 -0
  37. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/twentyfivense.py +0 -0
  38. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/mappings/twentyfourf2nt.py +0 -0
  39. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/processing.py +0 -0
  40. {datamule-2.0.0 → datamule-2.0.2}/datamule/document/table.py +0 -0
  41. {datamule-2.0.0 → datamule-2.0.2}/datamule/helper.py +0 -0
  42. {datamule-2.0.0 → datamule-2.0.2}/datamule/index.py +0 -0
  43. {datamule-2.0.0 → datamule-2.0.2}/datamule/mapping_dicts/__init__.py +0 -0
  44. {datamule-2.0.0 → datamule-2.0.2}/datamule/mapping_dicts/html_mapping_dicts.py +0 -0
  45. {datamule-2.0.0 → datamule-2.0.2}/datamule/mapping_dicts/txt_mapping_dicts.py +0 -0
  46. {datamule-2.0.0 → datamule-2.0.2}/datamule/mapping_dicts/xml_mapping_dicts.py +0 -0
  47. {datamule-2.0.0 → datamule-2.0.2}/datamule/package_updater.py +0 -0
  48. {datamule-2.0.0 → datamule-2.0.2}/datamule/portfolio.py +0 -0
  49. {datamule-2.0.0 → datamule-2.0.2}/datamule/portfolio_compression_utils.py +0 -0
  50. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/__init__.py +0 -0
  51. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/infrastructure/__init__.py +0 -0
  52. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/infrastructure/submissions_metadata.py +0 -0
  53. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/submissions/__init__.py +0 -0
  54. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/submissions/downloader.py +0 -0
  55. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/submissions/eftsquery.py +0 -0
  56. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/submissions/monitor.py +0 -0
  57. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/submissions/streamer.py +0 -0
  58. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/submissions/textsearch.py +0 -0
  59. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/utils.py +0 -0
  60. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/xbrl/__init__.py +0 -0
  61. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/xbrl/downloadcompanyfacts.py +0 -0
  62. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/xbrl/filter_xbrl.py +0 -0
  63. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/xbrl/streamcompanyfacts.py +0 -0
  64. {datamule-2.0.0 → datamule-2.0.2}/datamule/sec/xbrl/xbrlmonitor.py +0 -0
  65. {datamule-2.0.0 → datamule-2.0.2}/datamule/seclibrary/__init__.py +0 -0
  66. {datamule-2.0.0 → datamule-2.0.2}/datamule/seclibrary/bq.py +0 -0
  67. {datamule-2.0.0 → datamule-2.0.2}/datamule/submission.py +0 -0
  68. {datamule-2.0.0 → datamule-2.0.2}/datamule/utils/__init__.py +0 -0
  69. {datamule-2.0.0 → datamule-2.0.2}/datamule/utils/construct_submissions_data.py +0 -0
  70. {datamule-2.0.0 → datamule-2.0.2}/datamule/utils/format_accession.py +0 -0
  71. {datamule-2.0.0 → datamule-2.0.2}/datamule.egg-info/SOURCES.txt +0 -0
  72. {datamule-2.0.0 → datamule-2.0.2}/datamule.egg-info/dependency_links.txt +0 -0
  73. {datamule-2.0.0 → datamule-2.0.2}/datamule.egg-info/requires.txt +0 -0
  74. {datamule-2.0.0 → datamule-2.0.2}/datamule.egg-info/top_level.txt +0 -0
  75. {datamule-2.0.0 → datamule-2.0.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: datamule
3
- Version: 2.0.0
3
+ Version: 2.0.2
4
4
  Summary: Work with SEC submissions at scale.
5
5
  Home-page: https://github.com/john-friedman/datamule-python
6
6
  Author: John Friedman
@@ -311,11 +311,11 @@ class Downloader:
311
311
  columns=['accessionNumber'], distinct=True, page_size=25000, quiet=False,api_key=self.api_key)
312
312
 
313
313
  if filtered_accession_numbers:
314
- filtered_accession_numbers = [str(int(item.replace('-',''))) for item in filtered_accession_numbers]
314
+ filtered_accession_numbers = [format_accession(item,'int') for item in filtered_accession_numbers]
315
315
  filings = [filing for filing in filings if filing['accessionNumber'] in filtered_accession_numbers]
316
316
 
317
317
  if skip_accession_numbers:
318
- skip_accession_numbers = [int(item.replace('-','')) for item in skip_accession_numbers]
318
+ skip_accession_numbers = [format(item,'int') for item in skip_accession_numbers]
319
319
  filings = [filing for filing in filings if filing['accessionNumber'] not in skip_accession_numbers]
320
320
 
321
321
  logger.debug(f"Generating URLs for {len(filings)} filings...")
@@ -394,7 +394,7 @@ def download(submission_type=None, cik=None, filing_date=None, api_key=None, out
394
394
  skip_accession_numbers=[], max_batch_size=1024*1024*1024,accession_numbers=None):
395
395
 
396
396
  if filtered_accession_numbers:
397
- filtered_accession_numbers = [int(str(x).replace('-', '')) for x in filtered_accession_numbers]
397
+ filtered_accession_numbers = [format_accession(x,'int') for x in filtered_accession_numbers]
398
398
  elif filtered_accession_numbers == []:
399
399
  raise ValueError("Applied filter resulted in empty accession numbers list")
400
400
  downloader = Downloader(api_key=api_key)
@@ -5,6 +5,8 @@ from .helper import _process_cik_and_metadata_filters, load_package_dataset
5
5
  from .sec.xbrl.downloadcompanyfacts import download_company_facts
6
6
  from .datamule.datamule_lookup import datamule_lookup
7
7
  from .datamule.datamule_mysql_rds import query_mysql_rds
8
+ from company_fundamentals.utils import get_fundamental_mappings
9
+ from company_fundamentals import construct_fundamentals
8
10
  # slated for deprecation?
9
11
  from .seclibrary.bq import get_information_table, get_345, get_proxy_voting_record
10
12
 
@@ -21,7 +23,25 @@ class Sheet:
21
23
 
22
24
  def get_table(self,table,cik=None,ticker=None,**kwargs):
23
25
  cik = _process_cik_and_metadata_filters(cik, ticker)
24
- return query_mysql_rds(table=table,cik=cik,**kwargs)
26
+
27
+ if table == 'fundamentals':
28
+ fundamentals = kwargs.pop('fundamentals', None)
29
+ if fundamentals is None:
30
+ raise ValueError("fundamentals parameter required for fundamentals table")
31
+
32
+ categories = kwargs.pop('categories',None)
33
+
34
+ mappings = get_fundamental_mappings(fundamentals=fundamentals)
35
+ #print(mappings)
36
+ taxonomies = [item[0] for item in mappings]
37
+ names = [item[1] for item in mappings]
38
+ xbrl = query_mysql_rds(table='simple_xbrl',cik=cik,taxonomy=taxonomies,name=names,**kwargs)
39
+ #print(xbrl)
40
+
41
+ return construct_fundamentals(xbrl, 'taxonomy', 'name', 'period_start_date', 'period_end_date', categories=categories,fundamentals=fundamentals)
42
+
43
+ else:
44
+ return query_mysql_rds(table=table,cik=cik,**kwargs)
25
45
 
26
46
  def download_xbrl(
27
47
  self,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: datamule
3
- Version: 2.0.0
3
+ Version: 2.0.2
4
4
  Summary: Work with SEC submissions at scale.
5
5
  Home-page: https://github.com/john-friedman/datamule-python
6
6
  Author: John Friedman
@@ -32,7 +32,7 @@ if not os.path.exists(file_path):
32
32
  setup(
33
33
  name="datamule",
34
34
  author="John Friedman",
35
- version="2.0.0",
35
+ version="2.0.2",
36
36
  description="Work with SEC submissions at scale.",
37
37
  packages=find_packages(include=['datamule', 'datamule.*']),
38
38
  url="https://github.com/john-friedman/datamule-python",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes