From 3386f4fbf757623db86099c78615bafebc9d26fd Mon Sep 17 00:00:00 2001 From: Daniel Kratzert Date: Sun, 24 Sep 2023 14:08:54 +0200 Subject: [PATCH] Add parsing for ckf link --- finalcif/cif/checkcif/checkcif.py | 34 +- tests/checkcif_results/check_html_ab.html | 422 ++++++++++++++++++++++ tests/checkcif_results/check_pdf.pdf | Bin 0 -> 85218 bytes tests/checkcif_results/check_pdf_ab.html | 92 +++++ tests/checkcif_results/check_picture.gif | Bin 0 -> 33940 bytes tests/test_checkcif.py | 30 ++ 6 files changed, 564 insertions(+), 14 deletions(-) create mode 100644 tests/checkcif_results/check_html_ab.html create mode 100644 tests/checkcif_results/check_pdf.pdf create mode 100644 tests/checkcif_results/check_pdf_ab.html create mode 100644 tests/checkcif_results/check_picture.gif diff --git a/finalcif/cif/checkcif/checkcif.py b/finalcif/cif/checkcif/checkcif.py index 5d32af17..f533c889 100644 --- a/finalcif/cif/checkcif/checkcif.py +++ b/finalcif/cif/checkcif/checkcif.py @@ -149,6 +149,7 @@ def fix_iucr_urls(content: str): class MyHTMLParser(HTMLParser): def __init__(self, data): self.pdf_link = '' + self.structure_factor_report = '' self.imageurl = '' super(MyHTMLParser, self).__init__() self.vrf = '' @@ -159,10 +160,14 @@ def get_pdf(self) -> Optional[bytes]: return requests.get(self.pdf_link, timeout=10).content def handle_starttag(self, tag: str, attrs: str) -> None: - if tag == "a" and len(attrs) > 1 and attrs[0][1] == '_blank' and attrs[1][1].endswith('.pdf'): - url = attrs[1][1] - self.pdf_link = url - if tag == "img" and len(attrs) > 1 and attrs[0][0] == 'width' and '.gif' in attrs[1][1]: + #if tag and tag not in ('font', 'div', 'link', 'meta', 'html', 'table', 'td') and attrs: + # # For debug: + # print(f'tag: {tag}, attrs: {attrs}') + if tag == "a" and len(attrs) > 1 and attrs[1][0] == 'href' and attrs[1][1].endswith('.pdf'): + self.pdf_link = attrs[1][1] + if tag == "a" and len(attrs) > 1 and attrs[0][0] == 'href' and attrs[0][1].endswith('ckf.html'): + self.structure_factor_report = attrs[0][1] + if tag == "img" and len(attrs) > 1 and attrs[0][0] == 'width' and attrs[1][1].endswith('.gif'): url = attrs[1][1] self.imageurl = url @@ -244,18 +249,19 @@ def _parse_checkdef(self, alert: str) -> str: if __name__ == "__main__": - cif = Path('test-data/1000007-finalcif.cif') - html = Path(r'tests/examples/work/checkcif-cu_BruecknerJK_153F40_0m-finalcif.html') - # ckf = CheckCif(None, cif, outfile=html) - # ckf.show_html_report() - # sys.exit() - # ckf.show_pdf_report() - # html = Path(r'D:\frames\guest\BreitPZ_R_122\BreitPZ_R_122\checkcif-BreitPZ_R_122_0m_a.html') + html = Path(r'tests/checkcif_results/check_html_ab.html') + html_pdf = Path(r'tests/checkcif_results/check_pdf_ab.html') parser = MyHTMLParser(html.read_text()) - # print(parser.imageurl) - from pprint import pprint + print('html report link:', parser.structure_factor_report) + print('pdf link:', parser.pdf_link) + print('image url:', parser.imageurl) + print('###') + parser = MyHTMLParser(html_pdf.read_text()) + print('html report link:', parser.structure_factor_report) + print('pdf link:', parser.pdf_link) + print('image url:', parser.imageurl) - pprint(parser.response_forms) + # pprint(parser.response_forms) # print(parser.alert_levels) # print(parser.vrf) # print(parser.pdf) diff --git a/tests/checkcif_results/check_html_ab.html b/tests/checkcif_results/check_html_ab.html new file mode 100644 index 00000000..6c3b5216 --- /dev/null +++ b/tests/checkcif_results/check_html_ab.html @@ -0,0 +1,422 @@ + + + +checkCIF/PLATON page 2 + + + + +

checkCIF (basic structural check) running



Checking for embedded fcf data in CIF ...
Found embedded fcf data in CIF. Extracting fcf data from uploaded CIF, please wait . . . . .

checkCIF/PLATON (basic structural check)


Structure factors have been supplied for datablock(s) cu_BruecknerJK_153F40_0m

THIS REPORT IS FOR GUIDANCE ONLY. IF USED AS PART OF A REVIEW PROCEDURE FOR PUBLICATION, IT SHOULD NOT REPLACE THE EXPERTISE OF AN EXPERIENCED CRYSTALLOGRAPHIC REFEREE.
No syntax errors found. CIF dictionary
Please wait while processing .... Interpreting this report
+ Structure factor report

+ + + + + + +Datablock: cu_BruecknerJK_153F40_0m + +
+ + + + + + +
+ Bond precision: + + C-C = 0.0031 A + + Wavelength=1.54178 +
+ + + + + + + + + + + + + + + + + + +
+ Cell: + + a=19.678(3) + + b=37.0229(9) + + c=4.7720(4) +
+ + alpha=90 + + beta=90 + + gamma=90 +
+ Temperature: + + 102 K + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + Calculated + + Reported +
+ Volume + + 3476.6(6) + + + 3476.6(7) +
+ Space group + + P 21 21 2 + + P 21 21 2 +
+ Hall group + + P 2 2ab + + P 2 2ab +
+ Moiety formula + + 2(C38 H38 O12), C H4 O + + + ? + +
+ Sum formula + + C77 H80 O25 + + + C38.50 H40 O12.50 + +
+ Mr + + 1405.41 + + 702.70 +
+ Dx,g cm-3 + + 1.343 + + 1.343 +
+ Z + + 2 + + 4 +
+ Mu (mm-1) + + 0.838 + + 0.838 +
+ F000 + + 1484.0 + + 1484.0 +
+ F000' + + 1489.09 + + + +
+ h,k,lmax + + 25,47,6 + + 24,47,5 +
+ Nref + + 7449[ 4339] + + 7338 +
+ Tmin,Tmax + + 0.904,0.967 + + 0.770,0.929 +
+ Tmin' + + 0.832 + + +
+ + + + + +
+ Correction method= # Reported T Limits: Tmin=0.770 Tmax=0.929 AbsCorr = MULTI-SCAN + + +
+ + + + + +
+ Data completeness= 1.69/0.99 + + Theta(max)= 78.476 +
+ + + + + + + + +
+ R(reflections)= 0.0364( 7290) + + wR2(reflections)= 0.0919( 7338) +
+ + + + + +
+ S = 1.198 + + Npar= 479 +
+
+
+ +
The following ALERTS were generated. Each ALERT has the format
+       test-name_ALERT_alert-type_alert-level.
+Click on the hyperlinks for more details of the test.
+
Alert level C +PLAT413_ALERT_2_C Short Inter XH3 .. XHn H13 ..H19B . 2.14 Ang. + x,y,-1+z = 1_554 Check +PLAT911_ALERT_3_C Missing FCF Refl Between Thmin & STh/L= 0.600 3 Report +
Alert level G +PLAT007_ALERT_5_G Number of Unrefined Donor-H Atoms .............. 1 Report +PLAT045_ALERT_1_G Calculated and Reported Z Differ by a Factor ... 0.500 Check +PLAT187_ALERT_4_G The CIF-Embedded .res File Contains RIGU Records 1 Report +PLAT300_ALERT_4_G Atom Site Occupancy of O13 Constrained at 0.5 Check +
And 5 other PLAT300 Alerts +

PLAT300_ALERT_4_G Atom Site Occupancy of C39 Constrained at 0.5 Check +PLAT300_ALERT_4_G Atom Site Occupancy of H13A Constrained at 0.5 Check +PLAT300_ALERT_4_G Atom Site Occupancy of H39A Constrained at 0.5 Check +PLAT300_ALERT_4_G Atom Site Occupancy of H39B Constrained at 0.5 Check +PLAT300_ALERT_4_G Atom Site Occupancy of H39C Constrained at 0.5 Check +

PLAT302_ALERT_4_G Anion/Solvent/Minor-Residue Disorder (Resd 2 ) 100% Note +PLAT398_ALERT_2_G Deviating C-O-C Angle From 120 for O3 . 109.2 Degree +PLAT432_ALERT_2_G Short Inter X...Y Contact O2 ..C17 . 2.91 Ang. + -1/2+x,1/2-y,-z = 4_455 Check +PLAT789_ALERT_4_G Atoms with Negative _atom_site_disorder_group # 6 Check +PLAT822_ALERT_4_G CIF-embedded .res Contains Negative PART Numbers 1 Check +PLAT860_ALERT_3_G Number of Least-Squares Restraints ............. 5 Note +PLAT912_ALERT_4_G Missing # of FCF Reflections Above STh/L= 0.600 16 Note +PLAT913_ALERT_3_G Missing # of Very Strong Reflections in FCF .... 1 Note +PLAT978_ALERT_2_G Number C-C Bonds with Positive Residual Density. 23 Info +
0 ALERT level A = Most likely a serious problem - resolve or explain + 0 ALERT level B = A potentially serious problem, consider carefully + 2 ALERT level C = Check. Ensure it is not caused by an omission or oversight + 18 ALERT level G = General information/check it is not something unexpected + + 1 ALERT type 1 CIF construction/syntax error, inconsistent or missing data + 4 ALERT type 2 Indicator that the structure model may be wrong or deficient + 3 ALERT type 3 Indicator that the structure quality may be low + 11 ALERT type 4 Improvement, methodology, query or suggestion + 1 ALERT type 5 Informative message, check
+
Validation response form

Please find below a validation response form (VRF) that can be filled in and pasted into your CIF.

# start Validation Reply Form
+_vrf_PLAT413_cu_BruecknerJK_153F40_0m
+;
+PROBLEM: Short Inter XH3 .. XHn     H13      ..H19B     .       2.14 Ang.  
+RESPONSE: ...
+;
+_vrf_PLAT911_cu_BruecknerJK_153F40_0m
+;
+PROBLEM: Missing FCF Refl Between Thmin & STh/L=    0.600          3 Report
+RESPONSE: ...
+;
+# end Validation Reply Form

+ +
+ +

It is advisable to attempt to resolve as many as possible of the alerts in all categories. +Often the minor alerts point to easily fixed oversights, errors and omissions in your +CIF or refinement strategy, so attention to these fine details can be worthwhile. +In order to resolve some of the more serious problems it may be necessary to +carry out additional measurements or structure refinements. However, +the purpose of your study may justify the reported deviations and the more +serious of these should normally be commented upon in the discussion or +experimental section of a paper or in the "special_details" fields of the CIF. +checkCIF was carefully designed to identify outliers and unusual parameters, +but every test has its limitations and alerts that are not important in a particular +case may appear. Conversely, the absence of alerts does not guarantee there are +no aspects of the results needing attention. It is up to the individual to +critically assess their own results and, if necessary, seek expert advice.

+ +Publication of your CIF in IUCr journals + +

+A basic structural check has been run on your CIF. +These basic checks will be run on all CIFs submitted for publication in +IUCr journals (Acta Crystallographica, Journal of Applied Crystallography, +Journal of Synchrotron Radiation); however, if you intend to submit to Acta +Crystallographica Section C or E or IUCrData, you should make sure that +full publication +checks are run on the final version of your CIF prior to submission.

+ +Publication of your CIF in other journals +

Please refer to the Notes for Authors of the relevant journal for any special instructions relating to CIF submission.

+
+
PLATON version of 06/07/2023; check.def file version of 30/06/2023 +
Datablock cu_BruecknerJK_153F40_0m - ellipsoid plot
+ +
+ +
+ Download CIF editor (publCIF) from the IUCr
+ Download CIF editor (enCIFer) from the CCDC
+ Test a new CIF entry + + diff --git a/tests/checkcif_results/check_pdf.pdf b/tests/checkcif_results/check_pdf.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0f539e24e6383bdcc12f3a4d724717837b5eacd7 GIT binary patch literal 85218 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 literal 0 HcmV?d00001 diff --git a/tests/checkcif_results/check_pdf_ab.html b/tests/checkcif_results/check_pdf_ab.html new file mode 100644 index 00000000..7e354a12 --- /dev/null +++ b/tests/checkcif_results/check_pdf_ab.html @@ -0,0 +1,92 @@ + + + +checkCIF/PLATON page 2 + + + + +

checkCIF (basic structural check) running



Checking for embedded fcf data in CIF ...
Found embedded fcf data in CIF. Extracting fcf data from uploaded CIF, please wait . . . . .

checkCIF/PLATON (basic structural check)


Structure factors have been supplied for datablock(s) cu_BruecknerJK_153F40_0m

THIS REPORT IS FOR GUIDANCE ONLY. IF USED AS PART OF A REVIEW PROCEDURE FOR PUBLICATION, IT SHOULD NOT REPLACE THE EXPERTISE OF AN EXPERIENCED CRYSTALLOGRAPHIC REFEREE.
+ + + + + + + + + + + + + + + + + + + +
+

checkCIF

+ +
+ checkCIF is sponsored by


+ + [IUCr Journals] +

+ + [Cambridge Crystallographic Data Centre] +

+ + [American Chemical Society] +

+ + [Elsevier] +

+ + [Wiley] +

+ + [IUCrData] +

+ + [Royal Society of Chemistry] +

+ + [Chemical Society of Japan] +

+
+ A service of the
+ International Union of Crystallography
+
+

No syntax errors have been found. A PDF version of the checkCIF report + may be downloaded from the link that will appear below shortly. +

+
+

   + Download checkCIF report +

+

Structure factor report


+ Useful links

+ Details of checkCIF/PLATON tests
+ CIF dictionary
+ Full publication check
+
+ +
+
Download CIF editor (publCIF) from the IUCr
+ Download CIF editor (enCIFer) from the CCDC
+ Test a new CIF entry + + diff --git a/tests/checkcif_results/check_picture.gif b/tests/checkcif_results/check_picture.gif new file mode 100644 index 0000000000000000000000000000000000000000..4e5211824097a87b17fe690b28911a34b2141591 GIT binary patch literal 33940 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 GL;nGv+C;bj literal 0 HcmV?d00001 diff --git a/tests/test_checkcif.py b/tests/test_checkcif.py index 2447b669..7add1523 100644 --- a/tests/test_checkcif.py +++ b/tests/test_checkcif.py @@ -32,6 +32,7 @@ except Exception: request = None + @unittest.skipIf(not request, 'Skip without network') class TestCheckCifInterface(TestCase): def setUp(self) -> None: @@ -152,3 +153,32 @@ def test_pdf_link_there(self): # This html has a pdf link self.assertEqual('https://checkcif.iucr.org/XGW8nDLA5N4Xd/081921091639544652566/checkcif.pdf', self.parser.pdf_link) + + +class TestMyHTMLParserNew(unittest.TestCase): + + def test_parser_with_html(self): + # Read the sample HTML content from file + html_content = Path(r'tests/checkcif_results/check_html_ab.html').read_text() + parser = MyHTMLParser(html_content) + + self.assertEqual(parser.structure_factor_report, + "https://checkcif.iucr.org/4ocPADzJV04fN/092423121633543345593/ckf.html") + self.assertEqual(parser.pdf_link, "") + self.assertEqual(parser.imageurl, + "https://checkcif.iucr.org/4ocPADzJV04fN/092423121633543345593/platon_cu_BruecknerJK_153F40_0mte.gif") + + def test_parser_with_html_pdf(self): + # Read the sample HTML PDF content from file + html_pdf_content = Path(r'tests/checkcif_results/check_pdf_ab.html').read_text() + + parser = MyHTMLParser(html_pdf_content) + + self.assertEqual(parser.structure_factor_report, + "https://checkcif.iucr.org/A2pZY9P2WqtE7/092423121840336981715/ckf.html") + self.assertEqual(parser.pdf_link, "https://checkcif.iucr.org/A2pZY9P2WqtE7/092423121840336981715/checkcif.pdf") + self.assertEqual(parser.imageurl, "") + + +if __name__ == '__main__': + unittest.main()