|
|
@@ -1,6 +1,6 @@ |
|
|
|
{ |
|
|
|
"translatorID": "0db1c2d0-eaae-4f3d-94ef-d4b3aa61de16", |
|
|
|
"label": "Журнальный зал", |
|
|
|
"label": "magazines.russ.ru", |
|
|
|
"creator": "Avram Lyon", |
|
|
|
"target": "^https?://magazines\\.russ\\.ru/[a-zA-Z -_]+/[0-9]+/[0-9]+/", |
|
|
|
"minVersion": "2.1.9", |
|
@@ -9,7 +9,7 @@ |
|
|
|
"inRepository": true, |
|
|
|
"translatorType": 4, |
|
|
|
"browserSupport": "gcsibv", |
|
|
|
"lastUpdated": "2014-04-04 10:03:46" |
|
|
|
"lastUpdated": "2016-12-31 10:22:19" |
|
|
|
} |
|
|
|
|
|
|
|
/* |
|
@@ -35,43 +35,50 @@ |
|
|
|
|
|
|
|
***** END LICENSE BLOCK ***** |
|
|
|
*/ |
|
|
|
|
|
|
|
/* |
|
|
|
Translator for Russian journal aggregator. Scrapes basic bibliographic information |
|
|
|
for all of the journals, many of them literary or academic, hosted on the site. |
|
|
|
|
|
|
|
Due to small variations in journal formatting, some will not be translated correctly. |
|
|
|
|
|
|
|
Examples (Chicago style): |
|
|
|
1. Сергей Бирюков, “Избранное из неизбранного,” Дети Ра, no. 6 (2010), http://magazines.russ.ru/ra/2010/6/bi3.html. |
|
|
|
2. Вера Проскурина, “Ода Г.Р. Державина «На Счастие»: политика и поэтика,” НЛО, no. 97 (2009), http://magazines.russ.ru/nlo/2009/97/pr8.html. |
|
|
|
*/ |
|
|
|
|
|
|
|
function detectWeb(doc, url) { |
|
|
|
var results = ZU.xpath(doc, '//div[@class="opub"]'); |
|
|
|
if (results.length) { |
|
|
|
var results = ZU.xpathText(doc, '//p[@class="update"]'); |
|
|
|
if (results) { |
|
|
|
return "journalArticle"; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
function doWeb(doc, url) { |
|
|
|
var item = new Zotero.Item("journalArticle"); |
|
|
|
|
|
|
|
var publication = ZU.xpathText(doc, '//div[@class="opub"]/a'); |
|
|
|
if( publication ) { |
|
|
|
var pieces = publication.match(/«(.*)»[\n\t ]*([0-9]+), №([0-9]+)/); |
|
|
|
item.publicationTitle = pieces[1]; |
|
|
|
item.date = pieces[2]; |
|
|
|
item.issue = pieces[3]; |
|
|
|
var publication = ZU.xpathText(doc, '//p[@class="update"]/a'); |
|
|
|
//e.g. Дети Ра, 2012, 3(89) |
|
|
|
if (publication) { |
|
|
|
Z.debug(publication); |
|
|
|
var pieces = publication.split(','); |
|
|
|
//var pieces = publication.match(/«(.*)»[\n\t ]*([0-9]+), №([0-9]+)/); |
|
|
|
item.publicationTitle = pieces[0].trim(); |
|
|
|
item.date = pieces[1].trim(); |
|
|
|
var complex = pieces[2]; |
|
|
|
var posParenthesis = complex.indexOf('('); |
|
|
|
if (posParenthesis>-1) { |
|
|
|
item.volume = complex.substr(0, posParenthesis); |
|
|
|
item.issue = complex.substr(posParenthesis+1, complex.length-posParenthesis-2); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
item.title = ZU.xpathText(doc, '//div[@class="title1"]'); |
|
|
|
item.title = ZU.xpathText(doc, '//div[contains(@class, "article")]//h1'); |
|
|
|
|
|
|
|
var author = ZU.xpathText(doc, '//*[@class="avt1"]'); |
|
|
|
item.creators.push(ZU.cleanAuthor(author, "author")); |
|
|
|
var authors = ZU.xpath(doc, '//div[@class="authors"]'); |
|
|
|
for (var i=0; i<authors.length; i++) { |
|
|
|
item.creators.push(ZU.cleanAuthor(authors[i].textContent, "author")); |
|
|
|
} |
|
|
|
|
|
|
|
item.libraryCatalog = "Журнальный зал"; |
|
|
|
|
|
|
|
item.url = url; |
|
|
|
item.attachments.push({url:url, title: (item.publicationTitle + " Snapshot"), mimeType:"text/html"}); |
|
|
|
item.attachments.push({ |
|
|
|
url:url, |
|
|
|
title: "Snapshot", |
|
|
|
mimeType:"text/html" |
|
|
|
}); |
|
|
|
|
|
|
|
item.complete(); |
|
|
|
} |
|
@@ -83,30 +90,29 @@ var testCases = [ |
|
|
|
"items": [ |
|
|
|
{ |
|
|
|
"itemType": "journalArticle", |
|
|
|
"title": "В сторону СМОГа, или Параллели и меридианы СМОГа", |
|
|
|
"creators": [ |
|
|
|
{ |
|
|
|
"firstName": "Вячеслав", |
|
|
|
"lastName": "Самошкин", |
|
|
|
"creatorType": "author" |
|
|
|
} |
|
|
|
], |
|
|
|
"notes": [], |
|
|
|
"tags": [], |
|
|
|
"seeAlso": [], |
|
|
|
"date": "2012", |
|
|
|
"issue": "89", |
|
|
|
"libraryCatalog": "Журнальный зал", |
|
|
|
"publicationTitle": "Дети Ра", |
|
|
|
"url": "http://magazines.russ.ru/ra/2012/3/s11.html", |
|
|
|
"volume": "3", |
|
|
|
"attachments": [ |
|
|
|
{ |
|
|
|
"url": "http://magazines.russ.ru/ra/2012/3/s11.html", |
|
|
|
"title": "Дети Ра Snapshot", |
|
|
|
"title": "Snapshot", |
|
|
|
"mimeType": "text/html" |
|
|
|
} |
|
|
|
], |
|
|
|
"publicationTitle": "Дети Ра", |
|
|
|
"title": "В сторону СМОГа, или Параллели и меридианы СМОГа", |
|
|
|
"date": "2012", |
|
|
|
"issue": "3", |
|
|
|
"url": "http://magazines.russ.ru/ra/2012/3/s11.html", |
|
|
|
"libraryCatalog": "Журнальный зал", |
|
|
|
"accessDate": "CURRENT_TIMESTAMP" |
|
|
|
"tags": [], |
|
|
|
"notes": [], |
|
|
|
"seeAlso": [] |
|
|
|
} |
|
|
|
] |
|
|
|
} |
|
|
0 comments on commit
145a7b4