mirror of
https://github.com/Athou/commafeed.git
synced 2026-03-21 21:37:29 +00:00
rename for clarity
This commit is contained in:
@@ -43,7 +43,7 @@ public class FeedFetcher {
|
|||||||
fetchedFeed = parser.parse(result.getUrlAfterRedirect(), content);
|
fetchedFeed = parser.parse(result.getUrlAfterRedirect(), content);
|
||||||
} catch (FeedException e) {
|
} catch (FeedException e) {
|
||||||
if (extractFeedUrlFromHtml) {
|
if (extractFeedUrlFromHtml) {
|
||||||
String extractedUrl = extractFeedUrl(urlProviders, StringUtils.newStringUtf8(result.getContent()), feedUrl);
|
String extractedUrl = extractFeedUrl(urlProviders, feedUrl, StringUtils.newStringUtf8(result.getContent()));
|
||||||
if (org.apache.commons.lang3.StringUtils.isNotBlank(extractedUrl)) {
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(extractedUrl)) {
|
||||||
feedUrl = extractedUrl;
|
feedUrl = extractedUrl;
|
||||||
|
|
||||||
@@ -83,11 +83,11 @@ public class FeedFetcher {
|
|||||||
return fetchedFeed;
|
return fetchedFeed;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String extractFeedUrl(Set<FeedURLProvider> urlProviders, String html, String baseUri) {
|
private static String extractFeedUrl(Set<FeedURLProvider> urlProviders, String url, String urlContent) {
|
||||||
for (FeedURLProvider urlProvider : urlProviders) {
|
for (FeedURLProvider urlProvider : urlProviders) {
|
||||||
String url = urlProvider.get(html, baseUri);
|
String feedUrl = urlProvider.get(url, urlContent);
|
||||||
if (url != null)
|
if (feedUrl != null)
|
||||||
return url;
|
return feedUrl;
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
package com.commafeed.backend.urlprovider;
|
package com.commafeed.backend.urlprovider;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tries to find a feed url given the url and page content
|
||||||
|
*/
|
||||||
public interface FeedURLProvider {
|
public interface FeedURLProvider {
|
||||||
|
|
||||||
String get(String html, String url);
|
String get(String url, String urlContent);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,10 +7,10 @@ import org.jsoup.select.Elements;
|
|||||||
public class InPageReferenceFeedURLProvider implements FeedURLProvider {
|
public class InPageReferenceFeedURLProvider implements FeedURLProvider {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String get(String html, String url) {
|
public String get(String url, String urlContent) {
|
||||||
String foundUrl = null;
|
String foundUrl = null;
|
||||||
|
|
||||||
Document doc = Jsoup.parse(html, url);
|
Document doc = Jsoup.parse(urlContent, url);
|
||||||
String root = doc.children().get(0).tagName();
|
String root = doc.children().get(0).tagName();
|
||||||
if ("html".equals(root)) {
|
if ("html".equals(root)) {
|
||||||
Elements atom = doc.select("link[type=application/atom+xml]");
|
Elements atom = doc.select("link[type=application/atom+xml]");
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ public class YoutubeFeedURLProvider implements FeedURLProvider {
|
|||||||
private static final Pattern REGEXP = Pattern.compile("(.*\\byoutube\\.com)\\/channel\\/([^\\/]+)", Pattern.CASE_INSENSITIVE);
|
private static final Pattern REGEXP = Pattern.compile("(.*\\byoutube\\.com)\\/channel\\/([^\\/]+)", Pattern.CASE_INSENSITIVE);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String get(String html, String url) {
|
public String get(String url, String urlContent) {
|
||||||
Matcher matcher = REGEXP.matcher(url);
|
Matcher matcher = REGEXP.matcher(url);
|
||||||
return matcher.find() ? matcher.group(1) + "/feeds/videos.xml?channel_id=" + matcher.group(2) : null;
|
return matcher.find() ? matcher.group(1) + "/feeds/videos.xml?channel_id=" + matcher.group(2) : null;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user