11 #include "XBDateTime.h" 12 #include "addons/Addon.h" 13 #include "utils/ScraperParser.h" 14 #include "utils/ScraperUrl.h" 15 #include "video/Episode.h" 27 class CMusicAlbumInfo;
28 class CMusicArtistInfo;
51 typedef std::shared_ptr<CScraper> ScraperPtr;
53 std::string TranslateContent(
const CONTENT_TYPE &content,
bool pretty=
false);
54 CONTENT_TYPE TranslateContent(
const std::string &
string);
55 AddonType ScraperTypeFromContent(
const CONTENT_TYPE& content);
62 CScraperError(
const std::string &sTitle,
const std::string &sMessage) :
63 m_fAborted(
false), m_sTitle(sTitle), m_sMessage(sMessage) {}
65 bool FAborted()
const {
return m_fAborted; }
66 const std::string &Title()
const {
return m_sTitle; }
67 const std::string &Message()
const {
return m_sMessage; }
70 bool m_fAborted =
true;
72 std::string m_sMessage;
78 explicit CScraper(
const AddonInfoPtr& addonInfo, AddonType addonType);
88 bool SetPathSettings(CONTENT_TYPE content,
const std::string& xml);
96 std::string GetPathSettings();
104 CONTENT_TYPE Content()
const {
return m_pathContent; }
105 bool RequiresSettings()
const {
return m_requiressettings; }
106 bool Supports(
const CONTENT_TYPE &content)
const;
108 bool IsInUse()
const override;
110 bool IsPython()
const {
return m_isPython; }
113 CScraperUrl NfoUrl(
const std::string &sNfoContent);
124 CScraperUrl ResolveIDToUrl(
const std::string &externalID);
127 const std::string &movieTitle,
int movieYear,
bool fFirst);
128 std::vector<MUSIC_GRABBER::CMusicAlbumInfo> FindAlbum(
XFILE::CCurlFile &fcurl,
129 const std::string &sAlbum,
const std::string &sArtist =
"");
130 std::vector<MUSIC_GRABBER::CMusicArtistInfo> FindArtist(
139 const std::string &sSearch,
CArtist &artist);
148 std::string SearchStringEncoding()
const 149 {
return m_parser.GetSearchStringEncoding(); }
157 std::string GetPathSettingsAsJSON();
160 std::vector<std::string> Run(
const std::string&
function,
163 const std::vector<std::string>* extras =
nullptr);
164 std::vector<std::string> RunNoThrow(
const std::string&
function,
167 const std::vector<std::string>* extras =
nullptr);
168 std::string InternalRun(
const std::string&
function,
171 const std::vector<std::string>* extras);
174 bool m_isPython =
false;
175 bool m_requiressettings;
177 CONTENT_TYPE m_pathContent;
Definition: XBDateTime.h:21
Definition: ScraperParser.h:26
Definition: CurlFile.h:24
Definition: VideoInfoTag.h:51
Definition: ScraperUrl.h:21