Хотите использовать DOI для доступа к конкретной статье
В настоящее время я работаю с программой, которая используется для очистки веб-сайтов с информацией и их локального хранения в БД. Эта программа предназначена для получения статей из области ИТ, и у меня есть специальный список журналов, которые я должен найти. Он работает, как я DOI из базы данных, мы получили это с сайта под названием DBLP, и с этим DOI я установлю соединение и перенаправлю меня на сайт, где я могу найти статью. Проблема сейчас для меня в том, что я получил этот DOI:
И, как вы можете видеть, если вы нажмете на ссылку, я попаду на перекрестный сайт, который говорит мне, что я могу выбрать из 2 разных мест, чтобы найти эту статью. И поскольку у меня есть только переводчик, который может перебирать один из этих сайтов, я хочу перейти на сайт IEEE Xplore. Проблема сейчас в том, что я не знаю, как заставить мою программу перейти на сайт IEEE Xplore. Если вы посмотрите на мой код, который у меня сейчас есть, он выглядит примерно так:
public static void Scan(Article article) throws Exception
{
//When running program, creates a error text-file inside java Project folder
File file = new File("errorlogg.txt");
FileWriter fileWriter = new FileWriter(file, true);
// if file doesn't exists, then create it
if (!file.exists())
{
file.createNewFile();
}
//Setting up an URL HttpURLConnection given DOI
URL urlDoi = new URL (article.GetElectronicEdition());
//Transform from URL to String
String doiCheck = urlDoi.toString();
//Check what Journals
String JournalsWanted = article.GetJournal();
//Used to see if DOI changed
System.out.println("New DOI: " + urlDoi);
HttpURLConnection connDoi = (HttpURLConnection) urlDoi.openConnection();
// Make the logic below easier to detect redirections
connDoi.setInstanceFollowRedirects(false);
String doi = "{\"url\":\"" + connDoi.getHeaderField("Location") + "\",\"sessionid\":\"abc123\"}";
//Setting up an URL to translation-server
URL url = new URL("http://127.0.0.1:1969/web");
URLConnection conn = url.openConnection();
И я думал о том, чтобы просто сделать что-то простое, например, если бы шанс на URL-адрес, если я вижу, что это не приведет меня правильно. Я думал о чем-то вроде этого:
if(doiCheck.startsWith("http://dx."));
Проблема в том, что я не понимаю, как сайт перекрестной ссылки знает, за какой статьей я следую. Потому что, если я нажму на ссылку там на IEEE Xplore, это будет выглядеть так:
И кажется, что он не использует DOI, чтобы найти статью, или я что-то упускаю? Как я могу указать своей программе случайный URL, чтобы найти статью о IEEE Xplore?
Извините, если вопрос не так ясен и прост для понимания, но постарался объяснить мою проблему.