Springer Link Translator - Failed Import
Windows 7, Chrome Connector, Zotero 5.0
I tried importing a citation from the following page:
https://link.springer.com/protocol/10.1007/978-1-61779-382-0_7
The import failed, so I tried again with the debugger on. The submitted Debug ID is D2043833995.
Looking at the Debugger output, I found these following lines at the beginning:
-----------------------------------------------
(3)(+0000001): Translate: Beginning translation with Springer Link
(3)(+0000002): Translate: pdfURL: /content/pdf/10.1007%252F978-1-61779-382-0_7.pdf
(3)(+0000001): Translate: resolving URL https://link.springer.com/export-citation//protocol/10.1007/978-1-61779-382-0_7.ris
(3)(+0000000): Translate: resolved to https://link.springer.com/export-citation//protocol/10.1007/978-1-61779-382-0_7.ris
(3)(+0000001): HTTP GET https://link.springer.com/export-citation//protocol/10.1007/978-1-61779-382-0_7.ris
-----------------------------------------------
What caught my eye is the double separator between 'export-citation' and 'protocol'. If you try reaching that page in the browser, it gives an error page not found. If you remove that additional '/', the RIS file is retrieved.
Later in the debugger, I found the following code:
------------------------------------------------
(4)(+0000002): Translate: Parsing code for RIS (32d59d2d-b65a-4da4-b0a3-bdd3cfb979e7, 2017-01-26 13:35:00)
(3)(+0000004): Translate: Beginning translation with RIS
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: <!DOCTYPE html>
(3)(+0000002): Translate: RIS: Dropping line outside of RIS record: !--[if lt IE 7]
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: html lang="en" class="no-js ie6 lt-ie9 lt-ie8" ![endif]--
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: !--[if IE 7]
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: html lang="en" class="no-js ie7 lt-ie9 lt-ie8" <![endif]-->
(3)(+0000003): Translate: RIS: Dropping line outside of RIS record: !--[if IE 8]
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: html lang="en" class="no-js ie8 lt-ie9" ![endif]--
----------------------------------------------
(Note: to make the code display on the forum, I had to remove several "<" and ">" from the output)
It looks like the translator is fetching the wrong URL (which is the Error Page) and this is why the import fails.
At this point, I'm not sure if it is due to the Springer Translator or the Chrome Connector. I'll try looking into it later today if I find the time.
I tried importing a citation from the following page:
https://link.springer.com/protocol/10.1007/978-1-61779-382-0_7
The import failed, so I tried again with the debugger on. The submitted Debug ID is D2043833995.
Looking at the Debugger output, I found these following lines at the beginning:
-----------------------------------------------
(3)(+0000001): Translate: Beginning translation with Springer Link
(3)(+0000002): Translate: pdfURL: /content/pdf/10.1007%252F978-1-61779-382-0_7.pdf
(3)(+0000001): Translate: resolving URL https://link.springer.com/export-citation//protocol/10.1007/978-1-61779-382-0_7.ris
(3)(+0000000): Translate: resolved to https://link.springer.com/export-citation//protocol/10.1007/978-1-61779-382-0_7.ris
(3)(+0000001): HTTP GET https://link.springer.com/export-citation//protocol/10.1007/978-1-61779-382-0_7.ris
-----------------------------------------------
What caught my eye is the double separator between 'export-citation' and 'protocol'. If you try reaching that page in the browser, it gives an error page not found. If you remove that additional '/', the RIS file is retrieved.
Later in the debugger, I found the following code:
------------------------------------------------
(4)(+0000002): Translate: Parsing code for RIS (32d59d2d-b65a-4da4-b0a3-bdd3cfb979e7, 2017-01-26 13:35:00)
(3)(+0000004): Translate: Beginning translation with RIS
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: <!DOCTYPE html>
(3)(+0000002): Translate: RIS: Dropping line outside of RIS record: !--[if lt IE 7]
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: html lang="en" class="no-js ie6 lt-ie9 lt-ie8" ![endif]--
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: !--[if IE 7]
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: html lang="en" class="no-js ie7 lt-ie9 lt-ie8" <![endif]-->
(3)(+0000003): Translate: RIS: Dropping line outside of RIS record: !--[if IE 8]
(3)(+0000001): Translate: RIS: Dropping line outside of RIS record: html lang="en" class="no-js ie8 lt-ie9" ![endif]--
----------------------------------------------
(Note: to make the code display on the forum, I had to remove several "<" and ">" from the output)
It looks like the translator is fetching the wrong URL (which is the Error Page) and this is why the import fails.
At this point, I'm not sure if it is due to the Springer Translator or the Chrome Connector. I'll try looking into it later today if I find the time.
-
mtd91429It looks to be a simple fix. I'll post a pull request on Github.
-
zuphilipThe above mentioned url from Springer works with Zotero 4.0.29.21 in Firefox 54.0.
-
adamsmith(mtd pushed out a fix that I accepted almost immediately: https://github.com/zotero/translators/commit/3728e7c074dc7571e58b71acf20aefc1dc8c115e I think whether this failed might have depended on how specific browser handles duplicate // in URLs)