-Adds GSA journals translator.

This commit is contained in:
Michael Berkowitz 2008-04-21 21:01:11 +00:00
parent 62a3efaaae
commit 399c9e48db

View File

@ -22,7 +22,7 @@
-- Set the following timestamp to the most recent scraper update date
REPLACE INTO version VALUES ('repository', STRFTIME('%s', '2008-04-21 18:30:00'));
REPLACE INTO version VALUES ('repository', STRFTIME('%s', '2008-04-21 21:30:00'));
REPLACE INTO translators VALUES ('96b9f483-c44d-5784-cdad-ce21b984fe01', '1.0.0b4.r1', '', '2008-03-21 20:00:00', '1', '100', '4', 'Amazon.com', 'Sean Takats and Michael Berkowitz', '^https?://(?:www\.)?amazon',
'function detectWeb(doc, url) {
@ -1087,6 +1087,54 @@ REPLACE INTO translators VALUES ('88915634-1af6-c134-0171-56fd198235ed', '1.0.0b
Zotero.wait();
}');
REPLACE INTO translators VALUES ('70295509-4c29-460f-81a3-16d4ddbb93f6', '1.0.0b4.r5', '', '2008-04-21 21:30:00', '0', '100', '4', 'GSA Journals Online', 'Michael Berkowitz', 'http://www.gsajournals.org/',
'function detectWeb(doc, url) {
if (url.indexOf("request=search") != -1 || url.indexOf("request=get-toc") != -1) {
return "multiple";
} else if (url.indexOf("request=get-abstract") != -1 || url.indexOf("request=get-document") != -1) {
return "journalArticle";
}
}',
'function doWeb(doc, url) {
var arts = new Array();
if (detectWeb(doc, url) == "multiple") {
var items = new Object();
var results = doc.evaluate(''//*[@class="group"]'', doc, null, XPathResult.ANY_TYPE, null);
var next;
while (next = results.iterateNext()) {
var title = Zotero.Utilities.trimInternal(doc.evaluate(''.//*[@class="title"]'', next, null, XPathResult.ANY_TYPE, null).iterateNext().textContent);
var link = doc.evaluate(''.//a[1]'', next, null, XPathResult.ANY_TYPE, null).iterateNext().href;
items[link] = title;
}
items = Zotero.selectItems(items);
for (var i in items) {
arts.push(i.replace(/get\-(abstract|document)/, "cite-builder"));
}
} else {
arts = [url.replace(/get\-(abstract|document)/, "cite-builder")];
}
Zotero.Utilities.processDocuments(arts, function(doc) {
var newurl = doc.evaluate(''//a[contains(@href, "refman")]'', doc, null, XPathResult.ANY_TYPE, null).iterateNext().href;
var oldurl = doc.location.href;
Zotero.Utilities.HTTP.doGet(newurl, function(text) {
var translator = Zotero.loadTranslator("import");
translator.setTranslator("32d59d2d-b65a-4da4-b0a3-bdd3cfb979e7");
translator.setString(text);
translator.setHandler("itemDone", function(obj, item) {
item.url = oldurl;
item.DOI = decodeURIComponent(item.url.match(/doi=([^&]+)/)[1]);
var pdfurl = ''http://www.gsajournals.org/perlserv/?request=res-loc&uri=urn:ap:pdf:doi:'' + item.DOI;
item.attachments = [
{url:item.url, title:"GSA Snapshot", mimeType:"text/html"},
{url:pdfurl, title:"GSA Full Text PDF", mimeType:"application/pdf"}
];
item.complete();
});
translator.translate();
});
}, function() {Zotero.done;});
}');
REPLACE INTO translators VALUES ('9d822257-2eec-4674-b6d0-2504f54c8890', '1.0.0b4.r5', '', '2008-04-18 08:55:00', '0', '100', '4', 'African Journals Online', 'Michael Berkowitz', 'http://www.ajol.info',
'function detectWeb(doc, url) {
if (url.match(/viewarticle.php/)) {