|
4 | 4 | "cell_type": "code", |
5 | 5 | "execution_count": 1, |
6 | 6 | "metadata": {}, |
7 | | - "outputs": [ |
8 | | - { |
9 | | - "ename": "ModuleNotFoundError", |
10 | | - "evalue": "No module named 'lxml'", |
11 | | - "output_type": "error", |
12 | | - "traceback": [ |
13 | | - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", |
14 | | - "\u001b[0;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)", |
15 | | - "Cell \u001b[0;32mIn[1], line 3\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01msmed\u001b[39;00m \n\u001b[1;32m 2\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mpandas\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mpd\u001b[39;00m \n\u001b[0;32m----> 3\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mpaper\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Paper\n\u001b[1;32m 4\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mscrape\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mscrape\u001b[39;00m\n\u001b[1;32m 5\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mpaperSet\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m paperSet\n", |
16 | | - "File \u001b[0;32m~/miniconda3/envs/scrapemed/lib/python3.11/site-packages/scrapemed/paper.py:19\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m 2\u001b[0m \u001b[38;5;124;03mScrapeMed's Paper Module\u001b[39;00m\n\u001b[1;32m 3\u001b[0m \u001b[38;5;124;03m============================\u001b[39;00m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 16\u001b[0m \u001b[38;5;124;03m Also may be caused by broken XML formatting.\u001b[39;00m\n\u001b[1;32m 17\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m---> 19\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01m_parse\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mparse\u001b[39;00m\n\u001b[1;32m 20\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mlxml\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01metree\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mET\u001b[39;00m\n\u001b[1;32m 21\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mpandas\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mpd\u001b[39;00m\n", |
17 | | - "File \u001b[0;32m~/miniconda3/envs/scrapemed/lib/python3.11/site-packages/scrapemed/_parse.py:31\u001b[0m\n\u001b[1;32m 29\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mtyping\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m List, Dict, Tuple, Set\n\u001b[1;32m 30\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mtyping\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Union\n\u001b[0;32m---> 31\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mscrape\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mscrape\u001b[39;00m\n\u001b[1;32m 32\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mlxml\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01metree\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mET\u001b[39;00m\n\u001b[1;32m 33\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mutils\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m basicBiMap, cleanerdoc\n", |
18 | | - "File \u001b[0;32m~/miniconda3/envs/scrapemed/lib/python3.11/site-packages/scrapemed/scrape.py:18\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m 2\u001b[0m \u001b[38;5;124;03mScrapeMed's Scrape Module\u001b[39;00m\n\u001b[1;32m 3\u001b[0m \u001b[38;5;124;03m============================\u001b[39;00m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[38;5;124;03m validating.\u001b[39;00m\n\u001b[1;32m 14\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m 17\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01m_clean\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01m_clean\u001b[39;00m\n\u001b[0;32m---> 18\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mscrapemed\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01m_validate\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01m_validate\u001b[39;00m\n\u001b[1;32m 19\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mlxml\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01metree\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mET\u001b[39;00m\n\u001b[1;32m 20\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mBio\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Entrez\n", |
19 | | - "File \u001b[0;32m~/miniconda3/envs/scrapemed/lib/python3.11/site-packages/scrapemed/_validate.py:14\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m 2\u001b[0m \u001b[38;5;124;03mScrapeMed's ``_validate`` Module\u001b[39;00m\n\u001b[1;32m 3\u001b[0m \u001b[38;5;124;03m=================================\u001b[39;00m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 10\u001b[0m \u001b[38;5;124;03m downloaded XML.\u001b[39;00m\n\u001b[1;32m 11\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m 13\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mre\u001b[39;00m\n\u001b[0;32m---> 14\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mlxml\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01metree\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m \u001b[38;5;21;01mET\u001b[39;00m\n\u001b[1;32m 15\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mos\u001b[39;00m\n\u001b[1;32m 16\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mio\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m StringIO\n", |
20 | | - "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'lxml'" |
21 | | - ] |
22 | | - } |
23 | | - ], |
| 7 | + "outputs": [], |
24 | 8 | "source": [ |
25 | 9 | "import scrapemed as smed \n", |
26 | 10 | "import pandas as pd \n", |
|
34 | 18 | }, |
35 | 19 | { |
36 | 20 | "cell_type": "code", |
37 | | - "execution_count": 4, |
| 21 | + "execution_count": 2, |
38 | 22 | "metadata": {}, |
39 | 23 | "outputs": [], |
40 | 24 | "source": [ |
|
49 | 33 | }, |
50 | 34 | { |
51 | 35 | "cell_type": "code", |
52 | | - "execution_count": 5, |
| 36 | + "execution_count": 3, |
53 | 37 | "metadata": {}, |
54 | 38 | "outputs": [ |
55 | 39 | { |
|
58 | 42 | "['10744829', '10711149', '10710589', '10698442', '10692402', '10749855', '10742002', '10714222', '10681104', '10680896']" |
59 | 43 | ] |
60 | 44 | }, |
61 | | - "execution_count": 5, |
| 45 | + "execution_count": 3, |
62 | 46 | "metadata": {}, |
63 | 47 | "output_type": "execute_result" |
64 | 48 | } |
|
69 | 53 | }, |
70 | 54 | { |
71 | 55 | "cell_type": "code", |
72 | | - "execution_count": 7, |
| 56 | + "execution_count": 6, |
73 | 57 | "metadata": {}, |
74 | | - "outputs": [], |
| 58 | + "outputs": [ |
| 59 | + { |
| 60 | + "name": "stdout", |
| 61 | + "output_type": "stream", |
| 62 | + "text": [ |
| 63 | + "Generating paperSet from PMCID list (This can take a while due to PMC HTTP Request Limitations!)...\n", |
| 64 | + "Done generating paperSet!\n" |
| 65 | + ] |
| 66 | + } |
| 67 | + ], |
75 | 68 | "source": [ |
76 | | - "#pset = paperSet.from_pmcid_list(brain_surgery_articles, EMAIL)" |
| 69 | + "pset = paperSet.from_pmcid_list(brain_surgery_articles, EMAIL)" |
77 | 70 | ] |
78 | 71 | }, |
79 | 72 | { |
80 | 73 | "cell_type": "code", |
81 | | - "execution_count": 11, |
| 74 | + "execution_count": 5, |
82 | 75 | "metadata": {}, |
83 | 76 | "outputs": [ |
84 | 77 | { |
85 | | - "ename": "DTDParseError", |
86 | | - "evalue": "error parsing DTD", |
87 | | - "output_type": "error", |
88 | | - "traceback": [ |
89 | | - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", |
90 | | - "\u001b[0;31mDTDParseError\u001b[0m Traceback (most recent call last)", |
91 | | - "Cell \u001b[0;32mIn[11], line 6\u001b[0m\n\u001b[1;32m 3\u001b[0m PMCID \u001b[38;5;241m=\u001b[39m \u001b[38;5;241m7067710\u001b[39m\n\u001b[1;32m 4\u001b[0m email \u001b[38;5;241m=\u001b[39m os\u001b[38;5;241m.\u001b[39mgetenv(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mPMC_EMAIL\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m----> 6\u001b[0m p \u001b[38;5;241m=\u001b[39m \u001b[43mpaper\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mPaper\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfrom_pmc\u001b[49m\u001b[43m(\u001b[49m\u001b[43mPMCID\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43memail\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mdownload\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m)\u001b[49m\n", |
92 | | - "File \u001b[0;32m~/miniconda3/envs/scrapemed/lib/python3.11/site-packages/scrapemed/paper.py:179\u001b[0m, in \u001b[0;36mPaper.from_pmc\u001b[0;34m(cls, pmcid, email, download, validate, verbose, suppress_warnings, suppress_errors)\u001b[0m\n\u001b[1;32m 177\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m i \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mrange\u001b[39m(NUM_TRIES):\n\u001b[1;32m 178\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 179\u001b[0m paper_dict \u001b[38;5;241m=\u001b[39m \u001b[43mparse\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mpaper_dict_from_pmc\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 180\u001b[0m \u001b[43m \u001b[49m\u001b[43mpmcid\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mpmcid\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 181\u001b[0m \u001b[43m \u001b[49m\u001b[43memail\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43memail\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 182\u001b[0m \u001b[43m \u001b[49m\u001b[43mdownload\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mdownload\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 183\u001b[0m \u001b[43m \u001b[49m\u001b[43mvalidate\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mvalidate\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 184\u001b[0m \u001b[43m \u001b[49m\u001b[43mverbose\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mverbose\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 185\u001b[0m \u001b[43m \u001b[49m\u001b[43msuppress_warnings\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43msuppress_warnings\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 186\u001b[0m \u001b[43m \u001b[49m\u001b[43msuppress_errors\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43msuppress_errors\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m 187\u001b[0m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 188\u001b[0m \u001b[38;5;28;01mbreak\u001b[39;00m\n\u001b[1;32m 189\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m HTTPError:\n", |
93 | | - "File \u001b[0;32m~/miniconda3/envs/scrapemed/lib/python3.11/site-packages/scrapemed/_parse.py:130\u001b[0m, in \u001b[0;36mpaper_dict_from_pmc\u001b[0;34m(pmcid, email, download, validate, verbose, suppress_warnings, suppress_errors)\u001b[0m\n\u001b[1;32m 128\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mGenerating Paper object for PMCID = \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mpmcid\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m...\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m 129\u001b[0m \u001b[38;5;66;03m# DOWNLOAD XML TREE AND GET ROOT\u001b[39;00m\n\u001b[0;32m--> 130\u001b[0m paper_tree \u001b[38;5;241m=\u001b[39m \u001b[43mscrape\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_xml\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m 131\u001b[0m \u001b[43m \u001b[49m\u001b[43mpmcid\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mpmcid\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43memail\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43memail\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mdownload\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mdownload\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mvalidate\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mvalidate\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mverbose\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mverbose\u001b[49m\n\u001b[1;32m 132\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 133\u001b[0m root \u001b[38;5;241m=\u001b[39m paper_tree\u001b[38;5;241m.\u001b[39mgetroot()\n\u001b[1;32m 135\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m generate_paper_dict(\n\u001b[1;32m 136\u001b[0m pmcid\u001b[38;5;241m=\u001b[39mpmcid,\n\u001b[1;32m 137\u001b[0m paper_root\u001b[38;5;241m=\u001b[39mroot,\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 140\u001b[0m suppress_errors\u001b[38;5;241m=\u001b[39msuppress_errors,\n\u001b[1;32m 141\u001b[0m )\n", |
94 | | - "File \u001b[0;32m~/miniconda3/envs/scrapemed/lib/python3.11/site-packages/scrapemed/scrape.py:123\u001b[0m, in \u001b[0;36mget_xml\u001b[0;34m(pmcid, email, download, validate, strip_text_styling, verbose)\u001b[0m\n\u001b[1;32m 116\u001b[0m tree \u001b[38;5;241m=\u001b[39m xml_tree_from_string(\n\u001b[1;32m 117\u001b[0m xml_string\u001b[38;5;241m=\u001b[39mxml_text, strip_text_styling\u001b[38;5;241m=\u001b[39mstrip_text_styling, verbose\u001b[38;5;241m=\u001b[39mverbose\n\u001b[1;32m 118\u001b[0m )\n\u001b[1;32m 120\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m validate:\n\u001b[1;32m 121\u001b[0m \u001b[38;5;66;03m# Validate tags, attrs, values are supported for\u001b[39;00m\n\u001b[1;32m 122\u001b[0m \u001b[38;5;66;03m# parsing by the scrapemed package.\u001b[39;00m\n\u001b[0;32m--> 123\u001b[0m \u001b[43m_validate\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mvalidate_xml\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtree\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 124\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 125\u001b[0m warnings\u001b[38;5;241m.\u001b[39mwarn(\n\u001b[1;32m 126\u001b[0m (\n\u001b[1;32m 127\u001b[0m \u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mWarning! Scraping XML for PMCID \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mpmcid\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m from \u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 130\u001b[0m validationWarning,\n\u001b[1;32m 131\u001b[0m )\n", |
95 | | - "File \u001b[0;32m~/miniconda3/envs/scrapemed/lib/python3.11/site-packages/scrapemed/_validate.py:88\u001b[0m, in \u001b[0;36mvalidate_xml\u001b[0;34m(xml)\u001b[0m\n\u001b[1;32m 80\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m dtd_doc \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 81\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m noDTDFoundError(\n\u001b[1;32m 82\u001b[0m cleanerdoc(\n\u001b[1;32m 83\u001b[0m \u001b[38;5;250m \u001b[39m\u001b[38;5;124;03m\"\"\"DTD not found in scrapemed package. Ensure you are using the\u001b[39;00m\n\u001b[1;32m 84\u001b[0m \u001b[38;5;124;03m latest package version.\"\"\"\u001b[39;00m\n\u001b[1;32m 85\u001b[0m )\n\u001b[1;32m 86\u001b[0m )\n\u001b[0;32m---> 88\u001b[0m dtd \u001b[38;5;241m=\u001b[39m \u001b[43mET\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mDTD\u001b[49m\u001b[43m(\u001b[49m\u001b[43mStringIO\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdtd_doc\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 90\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m dtd\u001b[38;5;241m.\u001b[39mvalidate(xml)\n", |
96 | | - "File \u001b[0;32msrc/lxml/dtd.pxi:291\u001b[0m, in \u001b[0;36mlxml.etree.DTD.__init__\u001b[0;34m()\u001b[0m\n", |
97 | | - "File \u001b[0;32msrc/lxml/dtd.pxi:409\u001b[0m, in \u001b[0;36mlxml.etree._parseDtdFromFilelike\u001b[0;34m()\u001b[0m\n", |
98 | | - "\u001b[0;31mDTDParseError\u001b[0m: error parsing DTD" |
| 78 | + "name": "stderr", |
| 79 | + "output_type": "stream", |
| 80 | + "text": [ |
| 81 | + "unexpectedMultipleMatchWarning: Warning! Multiple titles matched. Setting Paper.title to the first match.\n", |
| 82 | + "\n", |
| 83 | + "unexpectedTagWarning: Tag of type sc found in a text portion of the provided markup language. Expected only HTML styling tags, or tags from the following list: ['xref', 'fig', 'table-wrap']. Specified unknown tag behavior: keep. Warning occured in a text section with id: Par6.\n", |
| 84 | + "\n" |
99 | 85 | ] |
100 | 86 | } |
101 | 87 | ], |
|
0 commit comments