pyeasyphd 0.3.26__py3-none-any.whl → 0.3.29__py3-none-any.whl
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.
Potentially problematic release.
This version of pyeasyphd might be problematic. Click here for more details.
- pyeasyphd/scripts/run_article_md.py +4 -4
- pyeasyphd/scripts/run_search.py +72 -26
- {pyeasyphd-0.3.26.dist-info → pyeasyphd-0.3.29.dist-info}/METADATA +2 -2
- {pyeasyphd-0.3.26.dist-info → pyeasyphd-0.3.29.dist-info}/RECORD +6 -6
- {pyeasyphd-0.3.26.dist-info → pyeasyphd-0.3.29.dist-info}/WHEEL +0 -0
- {pyeasyphd-0.3.26.dist-info → pyeasyphd-0.3.29.dist-info}/licenses/LICENSE +0 -0
|
@@ -48,10 +48,9 @@ def run_article_md_daily_notes(
|
|
|
48
48
|
"bib_for_abbr_name": "abbr.bib",
|
|
49
49
|
"bib_for_zotero_name": "zotero.bib",
|
|
50
50
|
"bib_for_save_name": "save.bib",
|
|
51
|
-
"display_google_connected_scite": ["google", "connected", "scite"],
|
|
52
51
|
|
|
53
52
|
"bib_folder_name": "bibs", # "" or "bib" or "bibs" or "main"
|
|
54
|
-
"delete_original_bib_in_output_folder": True,
|
|
53
|
+
"delete_original_bib_in_output_folder": True, # default is False
|
|
55
54
|
"bib_path_or_file": os.path.expanduser(bib_path_or_file),
|
|
56
55
|
|
|
57
56
|
# tex options
|
|
@@ -64,13 +63,14 @@ def run_article_md_daily_notes(
|
|
|
64
63
|
"shutil_input_texs": False, # True or False
|
|
65
64
|
"input_texs_in_relative_path": True,
|
|
66
65
|
"tex_folder_name": "texs", # "" or "tex" or "texs" or "main"
|
|
67
|
-
"delete_original_tex_in_output_folder": True,
|
|
66
|
+
"delete_original_tex_in_output_folder": True, # default is False
|
|
68
67
|
"generate_tex": False,
|
|
69
68
|
|
|
70
69
|
# md options
|
|
71
70
|
# ["www", "google", "connected", "scite"]
|
|
72
71
|
"display_www_google_connected_scite": ["google", "connected"], # python_writers.py
|
|
73
72
|
|
|
73
|
+
"join_flag_in_http": " | ", # default is " | " or " |\n"
|
|
74
74
|
"add_url_for_basic_dict": False, # default is True
|
|
75
75
|
"add_anchor_for_basic_dict": True, # default is False
|
|
76
76
|
"add_anchor_for_beauty_dict": False, # default is False
|
|
@@ -86,7 +86,7 @@ def run_article_md_daily_notes(
|
|
|
86
86
|
"add_anchor_in_md": True, # default is False
|
|
87
87
|
|
|
88
88
|
"md_folder_name": "mds", # "" or "md" or "main"
|
|
89
|
-
"delete_original_md_in_output_folder": True, # False
|
|
89
|
+
"delete_original_md_in_output_folder": True, # default is False
|
|
90
90
|
|
|
91
91
|
# html options
|
|
92
92
|
"generate_html": False,
|
pyeasyphd/scripts/run_search.py
CHANGED
|
@@ -22,12 +22,17 @@ def run_search_for_screen(
|
|
|
22
22
|
|
|
23
23
|
Args:
|
|
24
24
|
acronym: Conference/journal acronym to search for
|
|
25
|
-
year: Publication year to filter by
|
|
25
|
+
year: Publication year to filter by (0 means all years)
|
|
26
26
|
title: Paper title used as search keyword
|
|
27
27
|
path_spidered_bibs: Path to spidered bibliography files
|
|
28
28
|
path_spidering_bibs: Path to spidering bibliography files
|
|
29
29
|
path_conf_j_jsons: Path to conferences/journals JSON files
|
|
30
30
|
"""
|
|
31
|
+
# Handle year filtering: if year is 0, search all years (empty list)
|
|
32
|
+
search_year_list = [str(year)]
|
|
33
|
+
if year == 0:
|
|
34
|
+
search_year_list = [] # Empty list means no year filtering
|
|
35
|
+
|
|
31
36
|
# Expand and normalize file paths
|
|
32
37
|
path_spidered_bibs, path_spidering_bibs, path_conf_j_jsons = expand_paths(
|
|
33
38
|
path_spidered_bibs, path_spidering_bibs, path_conf_j_jsons
|
|
@@ -43,13 +48,18 @@ def run_search_for_screen(
|
|
|
43
48
|
path_conf_j_jsons=path_conf_j_jsons,
|
|
44
49
|
),
|
|
45
50
|
**build_search_options(
|
|
46
|
-
print_on_screen=True,
|
|
51
|
+
print_on_screen=True,
|
|
52
|
+
search_year_list=search_year_list, # Empty list for all years, otherwise specific year
|
|
53
|
+
keywords_type="Temp",
|
|
54
|
+
keywords_list_list=[[title]] # Use title as search keyword
|
|
47
55
|
),
|
|
48
56
|
}
|
|
49
57
|
|
|
50
58
|
# Execute searches across different bibliography sources
|
|
51
59
|
_execute_searches(options, "", path_spidered_bibs, path_spidering_bibs)
|
|
52
60
|
|
|
61
|
+
return None
|
|
62
|
+
|
|
53
63
|
|
|
54
64
|
def run_search_for_files(
|
|
55
65
|
keywords_type: str,
|
|
@@ -58,51 +68,73 @@ def run_search_for_files(
|
|
|
58
68
|
path_spidered_bibs: str,
|
|
59
69
|
path_spidering_bibs: str,
|
|
60
70
|
path_conf_j_jsons: str,
|
|
71
|
+
search_in_spidered_bib: bool = False,
|
|
72
|
+
search_in_spidering_bib: bool = False,
|
|
61
73
|
options: Optional[dict] = None
|
|
62
74
|
) -> None:
|
|
63
75
|
"""
|
|
64
76
|
Run search and save results to files with custom keywords.
|
|
65
77
|
|
|
66
78
|
Args:
|
|
67
|
-
keywords_type: Category name for the search keywords
|
|
68
|
-
keywords_list_list: Nested list of keywords to search for
|
|
79
|
+
keywords_type: Category name for the search keywords (used for organizing results)
|
|
80
|
+
keywords_list_list: Nested list of keywords to search for (each inner list represents a search group)
|
|
69
81
|
path_main_output: Main output directory for search results
|
|
70
82
|
path_spidered_bibs: Path to spidered bibliography files
|
|
71
83
|
path_spidering_bibs: Path to spidering bibliography files
|
|
72
84
|
path_conf_j_jsons: Path to conferences/journals JSON files
|
|
85
|
+
search_in_spidered_bib: Whether to search in spidered bibliography files
|
|
86
|
+
search_in_spidering_bib: Whether to search in spidering bibliography files
|
|
87
|
+
options: Additional search options to override defaults
|
|
73
88
|
"""
|
|
89
|
+
# Initialize options dictionary if not provided
|
|
74
90
|
if options is None:
|
|
75
91
|
options = {}
|
|
76
92
|
|
|
77
|
-
# Expand and normalize file paths
|
|
93
|
+
# Expand and normalize file paths to ensure consistent path formatting
|
|
78
94
|
path_main_output = expand_path(path_main_output)
|
|
79
95
|
path_spidered_bibs, path_spidering_bibs, path_conf_j_jsons = expand_paths(
|
|
80
96
|
path_spidered_bibs, path_spidering_bibs, path_conf_j_jsons
|
|
81
97
|
)
|
|
82
98
|
|
|
83
|
-
# Configure search options
|
|
99
|
+
# Configure search options by combining base options and search-specific options
|
|
84
100
|
options_ = {
|
|
85
101
|
**build_base_options(
|
|
86
|
-
include_publisher_list=[],
|
|
87
|
-
include_abbr_list=[],
|
|
88
|
-
exclude_publisher_list=["arXiv"],
|
|
89
|
-
exclude_abbr_list=[],
|
|
90
|
-
path_conf_j_jsons=path_conf_j_jsons,
|
|
102
|
+
include_publisher_list=[], # No specific publishers to include
|
|
103
|
+
include_abbr_list=[], # No specific conference/journal abbreviations to include
|
|
104
|
+
exclude_publisher_list=["arXiv"], # Exclude arXiv publications from search
|
|
105
|
+
exclude_abbr_list=[], # No specific conference/journal abbreviations to exclude
|
|
106
|
+
path_conf_j_jsons=path_conf_j_jsons, # Path to conference/journal metadata
|
|
91
107
|
),
|
|
92
108
|
**build_search_options(
|
|
93
|
-
print_on_screen=False,
|
|
94
|
-
search_year_list=[],
|
|
95
|
-
keywords_type=keywords_type,
|
|
96
|
-
keywords_list_list=keywords_list_list,
|
|
109
|
+
print_on_screen=False, # Disable screen output (results go to files only)
|
|
110
|
+
search_year_list=[], # Empty list means search all years (no year filtering)
|
|
111
|
+
keywords_type=keywords_type, # Use provided keyword category for result organization
|
|
112
|
+
keywords_list_list=keywords_list_list, # Use provided nested keyword lists for searching
|
|
97
113
|
),
|
|
98
114
|
}
|
|
115
|
+
# Update with any additional options provided by caller (overrides defaults)
|
|
99
116
|
options_.update(options)
|
|
100
|
-
|
|
101
|
-
|
|
117
|
+
|
|
118
|
+
# Execute searches across different bibliography sources with configured options
|
|
119
|
+
_execute_searches(
|
|
120
|
+
options_,
|
|
121
|
+
path_main_output,
|
|
122
|
+
path_spidered_bibs,
|
|
123
|
+
path_spidering_bibs,
|
|
124
|
+
search_in_spidered_bib, # Flag to control spidered bibliography search
|
|
125
|
+
search_in_spidering_bib # Flag to control spidering bibliography search
|
|
126
|
+
)
|
|
127
|
+
|
|
128
|
+
return None
|
|
102
129
|
|
|
103
130
|
|
|
104
131
|
def _execute_searches(
|
|
105
|
-
options: Dict[str, Any],
|
|
132
|
+
options: Dict[str, Any],
|
|
133
|
+
path_main_output: str,
|
|
134
|
+
path_spidered_bibs: str,
|
|
135
|
+
path_spidering_bibs: str,
|
|
136
|
+
search_in_spidered_bib: bool = False,
|
|
137
|
+
search_in_spidering_bib: bool = False,
|
|
106
138
|
) -> None:
|
|
107
139
|
"""
|
|
108
140
|
Execute searches across different bibliography sources.
|
|
@@ -112,18 +144,32 @@ def _execute_searches(
|
|
|
112
144
|
path_main_output: Base path for search results output
|
|
113
145
|
path_spidered_bibs: Path to spidered bibliography files
|
|
114
146
|
path_spidering_bibs: Path to spidering bibliography files
|
|
147
|
+
search_in_spidered_bib: Whether to search in spidered bibliography files
|
|
148
|
+
search_in_spidering_bib: Whether to search in spidering bibliography files
|
|
115
149
|
"""
|
|
116
150
|
# Search in spidered bibliographies (Conferences and Journals)
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
151
|
+
# If enabled, search through completed/conference and journal bibliographies
|
|
152
|
+
if search_in_spidered_bib:
|
|
153
|
+
for cj in ["Conferences", "Journals"]:
|
|
154
|
+
# Construct path to stored bibliography files for conferences/journals
|
|
155
|
+
path_storage = os.path.join(path_spidered_bibs, cj)
|
|
156
|
+
# Construct output path for search results
|
|
157
|
+
path_output = os.path.join(path_main_output, "Search_spidered_bib", cj)
|
|
158
|
+
# Execute search with given options and paths
|
|
159
|
+
Searchkeywords(path_storage, path_output, options).run()
|
|
121
160
|
|
|
122
161
|
# Search in spidering bibliographies (Journals and Journals Early Access)
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
162
|
+
# If enabled, search through actively spidering/in-progress journal bibliographies
|
|
163
|
+
if search_in_spidering_bib:
|
|
164
|
+
for je in ["spider_j", "spider_j_e"]:
|
|
165
|
+
# Construct path to spidering bibliography files (journals and early access)
|
|
166
|
+
path_storage = os.path.join(path_spidering_bibs, je)
|
|
167
|
+
# Construct output path for search results
|
|
168
|
+
path_output = os.path.join(path_main_output, "Search_spidering_bib", je)
|
|
169
|
+
# Execute search with given options and paths
|
|
170
|
+
Searchkeywords(path_storage, path_output, options).run()
|
|
171
|
+
|
|
172
|
+
return None
|
|
127
173
|
|
|
128
174
|
|
|
129
175
|
def run_compare_after_search(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyeasyphd
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.29
|
|
4
4
|
Summary: pyeasyphd
|
|
5
5
|
License: GPL-3.0-or-later
|
|
6
6
|
License-File: LICENSE
|
|
@@ -17,7 +17,7 @@ Classifier: Programming Language :: Python :: 3.13
|
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.14
|
|
18
18
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
19
19
|
Requires-Dist: pyadvtools (>=0.2.14,<0.3.0)
|
|
20
|
-
Requires-Dist: pybibtexer (>=0.2.
|
|
20
|
+
Requires-Dist: pybibtexer (>=0.2.12,<0.3.0)
|
|
21
21
|
Project-URL: Documentation, https://github.com/Easy-PhD/pyeasyphd
|
|
22
22
|
Project-URL: Homepage, https://github.com/Easy-PhD/pyeasyphd
|
|
23
23
|
Project-URL: Repository, https://github.com/Easy-PhD/pyeasyphd
|
|
@@ -26,14 +26,14 @@ pyeasyphd/pyeasyphd.sublime-settings,sha256=Bp_41iwVn23bCs1kC0R-XR8PChUF8btVGXfc
|
|
|
26
26
|
pyeasyphd/pyeasyphd.sublime-syntax,sha256=pXylbA-tye-K5dCTjEJLFVRqtY1T7AgWZ4laxo-dnaE,73
|
|
27
27
|
pyeasyphd/scripts/__init__.py,sha256=4CRYg0X4QIPRnlaB0Gyn2Z7zU5OYp9FwTS6VJq9MsiM,1234
|
|
28
28
|
pyeasyphd/scripts/_base.py,sha256=Vm-CehgDng38jACb9KBzKkbyJuc_e5UjG06nIMi_l0o,2337
|
|
29
|
-
pyeasyphd/scripts/run_article_md.py,sha256=
|
|
29
|
+
pyeasyphd/scripts/run_article_md.py,sha256=U3OwzHnCD8rT3R24MNa3juNQR-_60Hihb_y9MkdHGH8,4304
|
|
30
30
|
pyeasyphd/scripts/run_article_tex.py,sha256=VJNXyRagM5a-iz_6pb54yb7lQfTOWxYY_lK4eU6jp5Y,3825
|
|
31
31
|
pyeasyphd/scripts/run_beamer_tex.py,sha256=GpUVSXINHkgJFIQe_k9qWElTxLmAVFNLJhvivjIdinI,3362
|
|
32
32
|
pyeasyphd/scripts/run_compare.py,sha256=6UfsAjy9giKTIhvgW2gRbfETkc29_KSV4KyMi1ubN04,3237
|
|
33
33
|
pyeasyphd/scripts/run_format.py,sha256=P1h--AKWblRhbdf1IDmLuu54mbFBFwgGxpGpdLEpZI4,2972
|
|
34
34
|
pyeasyphd/scripts/run_generate.py,sha256=i8J3X3zn2QMuKUshu3FGpaq4kPw_P7TVXU46Wy_mZ8s,8549
|
|
35
35
|
pyeasyphd/scripts/run_replace.py,sha256=IyH12rM1QRIDDFsFnHV2ZAa5oocsD9-1llXJHhD32Ck,1368
|
|
36
|
-
pyeasyphd/scripts/run_search.py,sha256=
|
|
36
|
+
pyeasyphd/scripts/run_search.py,sha256=WptOzn0wBSIAmH90jnJRmVlPB6gqNA723puPBjp1AVM,10595
|
|
37
37
|
pyeasyphd/tools/__init__.py,sha256=u1MZu_JjVac3HhEmcSTwroS83UVu0W5Vspy3Wu_-GH8,496
|
|
38
38
|
pyeasyphd/tools/generate/generate_from_bibs.py,sha256=Dp1MyADwIRb9qFTFOkMPJLaeeh7NBjuiSLBN7smP2eo,7640
|
|
39
39
|
pyeasyphd/tools/generate/generate_html.py,sha256=JzUEqgTVCaFzd4hXTYUEf0cVSO1QRe0nVUS72W6oyyU,5349
|
|
@@ -47,7 +47,7 @@ pyeasyphd/tools/search/search_keywords.py,sha256=YCurXuoYeU1ftve0cb8Hcn_g2FXCXf7
|
|
|
47
47
|
pyeasyphd/tools/search/search_writers.py,sha256=Dz6D8m17R7x8NT7_PCjwmzlq29AfUz-N6sjyCguDTo4,15702
|
|
48
48
|
pyeasyphd/tools/search/utils.py,sha256=bo7xtIZu31dQvjol1lwyWq1t6ldbw28oondwK8VbAqk,7562
|
|
49
49
|
pyeasyphd/utils/utils.py,sha256=kWxzzgNwz77K9Q7j-RKTaoPpxqiVLVtaBMMhLuEenwE,3128
|
|
50
|
-
pyeasyphd-0.3.
|
|
51
|
-
pyeasyphd-0.3.
|
|
52
|
-
pyeasyphd-0.3.
|
|
53
|
-
pyeasyphd-0.3.
|
|
50
|
+
pyeasyphd-0.3.29.dist-info/METADATA,sha256=dQXm_1B6uLdL7IX4D9vzouAiX8x_C7opmO5ok6q2Q74,1470
|
|
51
|
+
pyeasyphd-0.3.29.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
|
|
52
|
+
pyeasyphd-0.3.29.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
53
|
+
pyeasyphd-0.3.29.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|