Jump to content
Ketarin forum

CybTekSol

Members
  • Posts

    729
  • Joined

  • Last visited

Posts posted by CybTekSol

  1. Add another to that Shawn... SF uses ; instead of ' or " to envelop URLs... They changed it months ago which forced me to alter my template and do a global search & replace on my xml. Stuff like this is why I use any other possible source. By contrast, I developed a SnapFiles template 18 months ago and have not had to make a single tweak that I can remember! So [^"';\s<>]+ to include SF's method... I don't use the above methods much as I like the regex to be more selective limiting the capture to only one possible URL per page on complex sites such as SF and others. Just my preference.

     

    Correction: They added it (;) some months ago and just to some apps such as FileZilla... just another example of the SF inconsistencies that make a 100% successful template a pipe dream IMHO.

  2. If you use some other OS then maybe there is a third party program that does something similar.

    These two will help in WinXP:

     

    Sizer

    and

    AllSnap

     

    Both are a couple of the first apps I install on clients XP PCs due to their usefullness...

     

    Addendum: I just verified that this works beautifully with Sizer... I created two entries to divide the total screen height by 2 and sized the 'main window' and the 'log window' in a few seconds. For my screen resolution, I created 1440x435 (Top) and 1440x435 (Bottom)... adjust accordingly for your screen resolution.

  3. I researched this many months ago and if my memory serves me correctly, it has to do with Ketarin's inability to handle the server-side method of the file delivery for these particular apps. I think we have discussed this before and I believe we used a Firefox extension called 'HTTPFox' to track it down.

     

    UPDATE: I'm wondering if Ketarin is able to parse %2C that exists in the download URL that my template captures... %2C = , which I have NOT encounterd in any other app's download URL that I can recall. Is it possible that this is causing the download to 'time-out' in Ketarin Flo? Otherwise... it is probably the 'Set Cookie' that I see in my 'HTTPFox' 'response-header' capture in Firefox.

  4. You can play with these to see if it can be tweaked for your needs:

     

    (?:href=("|'))([a-z]+://.*?\.(?:exe|7z|zip|zip2|bz|bz2|bzip|gz|gzip|jar|lha|lzh|lzw|pak|rar|sit|sit!|sit5|sitd|sithqx|sitx|tz|wsz|cab|msi|bin|img|iso|xpi|pbp))(?:"|')

     

    (?:href=)(?:"|')(((\w+:\/\/([\w@][\w.:@]+))?\/?[\w\s_\.?=%&=\-@/$,]*\.[a-z]{2,3}))(?:"|')

     

    You can place what I call anchor variables that you define within the regex to limit their capture, i.e. :

     

    {anchor1} = 'string that always occurs on app page'

     

    {anchor2} = 'another string'

     

    {anchor3] = 'possibly a preferred file extension instead of the choices above'

     

    Note: I highly recommend 'Expresso', for testing and tweaking regular expressions... just search Expresso here in the forum for more info.

  5. @appyface,

     

    I'm obviously not Shawn... but these are exports based on my SF template which is slow but reliable...

     

    First... the ZIP version:

    <?xml version='1.0' encoding='utf-8'?>
    <Jobs>
     <ApplicationJob xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
       <WebsiteUrl />
       <UserNotes />
       <IgnoreFileInformation>false</IgnoreFileInformation>
       <DownloadBeta>Default</DownloadBeta>
       <DownloadDate xsi:nil="true" />
       <CheckForUpdatesOnly>false</CheckForUpdatesOnly>
       <VariableChangeIndicator />
       <CanBeShared>true</CanBeShared>
       <ShareApplication>false</ShareApplication>
       <ExclusiveDownload>false</ExclusiveDownload>
       <HttpReferer>http://sourceforge.net</HttpReferer>
       <Variables>
         <item>
           <key>
             <string>ProjectPageURL</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>http://sourceforge.net/projects/keepass/</TextualContent>
               <Name>ProjectPageURL</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>ProjectName</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>{ProjectPageURL:replace:http\\://sourceforge.net/projects:}</TextualContent>
               <Name>ProjectName</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>anchor1</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>KeePass-</TextualContent>
               <Name>anchor1</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>anchor2</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>zip</TextualContent>
               <Name>anchor2</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>ver_scrape</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>RegularExpression</VariableType>
               <Regex>(?:['|"|;]http://downloads.sourceforge.net/project{ProjectName}[\w\s_\.?=%&=\-@/$,]*(?:_v|%20v|[a-z]v|[a-z]-|[a-z]_|/|%20|\s))(\d[\w\s_\.?=%&=\-@/$,]*)(?:/{anchor1}\d[\w\s_\.?=%&=\-@/$,]*\d\.{anchor2})(?:['|"|\?])</Regex>
               <Url>{ProjectPageURL}files/</Url>
               <Name>ver_scrape</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>truncated_url</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>RegularExpression</VariableType>
               <Regex>(?:['|"|;]http://downloads.sourceforge.net/project)({ProjectName}[\w\s_\.?=%&=\-@/$,]*{ver_scrape}/{anchor1}\d[\w\s_\.?=%&=\-@/$,]*\d\.{anchor2})(?:['|"|\?])</Regex>
               <Url>{ProjectPageURL}files/</Url>
               <Name>truncated_url</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>SF_mirror</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>hivelocity</TextualContent>
               <Name>SF_mirror</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>download_url</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>http://{SF_mirror}.dl.sourceforge.net/project{truncated_url}</TextualContent>
               <Name>download_url</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>version</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>{ver_scrape:replace:%20:_}</TextualContent>
               <Name>version</Name>
             </UrlVariable>
           </value>
         </item>
       </Variables>
       <ExecuteCommand />
       <ExecutePreCommand />
       <Category>Security\Password Managers</Category>
       <SourceType>FixedUrl</SourceType>
       <DeletePreviousFile>true</DeletePreviousFile>
       <Enabled>true</Enabled>
       <FileHippoId />
       <LastUpdated xsi:nil="true" />
       <TargetPath>{target}\{category}\KeePass_v{version:replace: :_}.{url:ext}</TargetPath>
       <FixedDownloadUrl>{download_url}</FixedDownloadUrl>
       <Name>KeePass Password Safe (ZIP)</Name>
     </ApplicationJob>
    </Jobs>

    Next... the SETUP version...

    <?xml version='1.0' encoding='utf-8'?>
    <Jobs>
     <ApplicationJob xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
       <WebsiteUrl />
       <UserNotes />
       <IgnoreFileInformation>false</IgnoreFileInformation>
       <DownloadBeta>Default</DownloadBeta>
       <DownloadDate xsi:nil="true" />
       <CheckForUpdatesOnly>false</CheckForUpdatesOnly>
       <VariableChangeIndicator />
       <CanBeShared>true</CanBeShared>
       <ShareApplication>false</ShareApplication>
       <ExclusiveDownload>false</ExclusiveDownload>
       <HttpReferer>http://sourceforge.net</HttpReferer>
       <Variables>
         <item>
           <key>
             <string>ProjectPageURL</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>http://sourceforge.net/projects/keepass/</TextualContent>
               <Name>ProjectPageURL</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>ProjectName</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>{ProjectPageURL:replace:http\\://sourceforge.net/projects:}</TextualContent>
               <Name>ProjectName</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>anchor1</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>KeePass-</TextualContent>
               <Name>anchor1</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>anchor2</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>-Setup</TextualContent>
               <Name>anchor2</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>anchor3</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>exe</TextualContent>
               <Name>anchor3</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>ver_scrape</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>RegularExpression</VariableType>
               <Regex>(?:['|"|;]http://downloads.sourceforge.net/project{ProjectName}[\w\s_\.?=%&=\-@/$,]*(?:_v|%20v|[a-z]v|[a-z]-|[a-z]_|/|%20|\s))(\d[\w\s_\.?=%&=\-@/$,]*)(?:/{anchor1}\d[\w\s_\.?=%&=\-@/$,]*{anchor2}\.{anchor3})(?:['|"|\?])</Regex>
               <Url>{ProjectPageURL}files/</Url>
               <Name>ver_scrape</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>truncated_url</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>RegularExpression</VariableType>
               <Regex>(?:['|"|;]http://downloads.sourceforge.net/project)({ProjectName}[\w\s_\.?=%&=\-@/$,]*{ver_scrape}/{anchor1}\d[\w\s_\.?=%&=\-@/$,]*{anchor2}\.{anchor3})(?:['|"|\?])</Regex>
               <Url>{ProjectPageURL}files/</Url>
               <Name>truncated_url</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>SF_mirror</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>softlayer</TextualContent>
               <Name>SF_mirror</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>download_url</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>http://{SF_mirror}.dl.sourceforge.net/project{truncated_url}</TextualContent>
               <Name>download_url</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>version</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>{ver_scrape:replace:%20:_}</TextualContent>
               <Name>version</Name>
             </UrlVariable>
           </value>
         </item>
       </Variables>
       <ExecuteCommand />
       <ExecutePreCommand />
       <Category>Security\Password Managers</Category>
       <SourceType>FixedUrl</SourceType>
       <DeletePreviousFile>true</DeletePreviousFile>
       <Enabled>true</Enabled>
       <FileHippoId />
       <LastUpdated xsi:nil="true" />
       <TargetPath>{target}\{category}\KeePass_setup_v{version:replace: :_}.{url:ext}</TargetPath>
       <FixedDownloadUrl>{download_url}</FixedDownloadUrl>
       <Name>KeePass Password Safe (SETUP)</Name>
     </ApplicationJob>
    </Jobs>

  6. @appyface,

    Good to see you back... hope you are well. ;) As for a SF template... there are so many site inconsistencies, the best template I've ever been able to develop is at best 80-90% without tweaking. I avoid SF like the plague unless there are no other options!

     

    The reason I have never posted the template here is that every time FranciscoR and I posted/discussed it here, they would globally replace html code and break the template... coincidence or not... I'll never know. This post of mine for ffdshow (x64) will give you an idea of my template's design which relies on what I term 'anchors'.

     

    If this looks like something you can work with, I will e-mail the full template to you directly. All you have to do is import the template, supply information as requested by the 'placholder' prompts (they are described when prompted) and then tweak the regex as required and test. The template will at the very least get you 'in the ballpark'... so to speak.

     

    I will do the same for others as well if they post back here...

     

    Regards,

    CybTekSol

  7. These will give you something to play with:

     

    ffdshow (x64)

    <?xml version='1.0' encoding='utf-8'?>
    <Jobs>
     <ApplicationJob xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
       <WebsiteUrl />
       <UserNotes />
       <LastFileSize>0</LastFileSize>
       <LastFileDate xsi:nil="true" />
       <IgnoreFileInformation>false</IgnoreFileInformation>
       <DownloadBeta>Default</DownloadBeta>
       <DownloadDate xsi:nil="true" />
       <CheckForUpdatesOnly>false</CheckForUpdatesOnly>
       <VariableChangeIndicator />
       <CanBeShared>true</CanBeShared>
       <ShareApplication>false</ShareApplication>
       <ExclusiveDownload>false</ExclusiveDownload>
       <HttpReferer>http://sourceforge.net</HttpReferer>
       <Variables>
         <item>
           <key>
             <string>ProjectPageURL</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>http://sourceforge.net/projects/ffdshow-tryout/</TextualContent>
               <Name>ProjectPageURL</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>ProjectName</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>{ProjectPageURL:replace:http\\://sourceforge.net/projects:}</TextualContent>
               <Name>ProjectName</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>anchor1</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>ffdshow_</TextualContent>
               <Name>anchor1</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>anchor2</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>_clsid_x64</TextualContent>
               <Name>anchor2</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>anchor3</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>exe</TextualContent>
               <Name>anchor3</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>version</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>RegularExpression</VariableType>
               <Regex>(?:['|"|;]http://downloads.sourceforge.net/project{ProjectName}[\w\s_\.?=%&=\-@/$,]*(?:_v|%20v|[a-z]v|[a-z]-|[a-z]_|/|%20|\s))(?:\d[\w\s_\.?=%&=\-@/$,]*/{anchor1})([\w\s_\.?=%&=\-@/$,]*)(?:{anchor2}\.{anchor3})(?:['|"|\?])</Regex>
               <Url>{ProjectPageURL}files/</Url>
               <Name>version</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>truncated_url</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>RegularExpression</VariableType>
               <Regex>(?:['|"|;]http://downloads.sourceforge.net/project)({ProjectName}[\w\s_\.?=%&=\-@/$,]*{anchor1}{version}{anchor2}\.{anchor3})(?:['|"|\?])</Regex>
               <Url>{ProjectPageURL}files/</Url>
               <Name>truncated_url</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>SF_mirror</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>softlayer</TextualContent>
               <Name>SF_mirror</Name>
             </UrlVariable>
           </value>
         </item>
         <item>
           <key>
             <string>download_url</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>false</RegexRightToLeft>
               <VariableType>Textual</VariableType>
               <Regex />
               <TextualContent>http://{SF_mirror}.dl.sourceforge.net/project{truncated_url}</TextualContent>
               <Name>download_url</Name>
             </UrlVariable>
           </value>
         </item>
       </Variables>
       <ExecuteCommand />
       <ExecutePreCommand />
       <Category>Test</Category>
       <SourceType>FixedUrl</SourceType>
       <PreviousLocation />
       <DeletePreviousFile>true</DeletePreviousFile>
       <Enabled>true</Enabled>
       <FileHippoId />
       <LastUpdated xsi:nil="true" />
       <TargetPath>{target}\{category}\</TargetPath>
       <FixedDownloadUrl>{download_url}</FixedDownloadUrl>
       <Name>ffdshow (x64)</Name>
     </ApplicationJob>
    </Jobs>

    VirtualDub (x64)

    <?xml version='1.0' encoding='utf-8'?>
    <Jobs>
     <ApplicationJob xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
       <WebsiteUrl />
       <UserNotes />
       <LastFileSize>0</LastFileSize>
       <LastFileDate xsi:nil="true" />
       <IgnoreFileInformation>false</IgnoreFileInformation>
       <DownloadBeta>Default</DownloadBeta>
       <DownloadDate xsi:nil="true" />
       <CheckForUpdatesOnly>false</CheckForUpdatesOnly>
       <VariableChangeIndicator />
       <CanBeShared>true</CanBeShared>
       <ShareApplication>false</ShareApplication>
       <ExclusiveDownload>false</ExclusiveDownload>
       <HttpReferer>http://sourceforge.net</HttpReferer>
       <Variables>
         <item>
           <key>
             <string>version</string>
           </key>
           <value>
             <UrlVariable>
               <RegexRightToLeft>true</RegexRightToLeft>
               <VariableType>StartEnd</VariableType>
               <Regex />
               <Url>http://virtualdub.sourceforge.net/</Url>
               <StartText>zip)</a></p> <h2 style="margin-top: 50px">Release build -- </StartText>
               <EndText> (stable), 64-bit (AMD64) version<</EndText>
               <TextualContent />
               <Name>version</Name>
             </UrlVariable>
           </value>
         </item>
       </Variables>
       <ExecuteCommand />
       <ExecutePreCommand />
       <Category>Test</Category>
       <SourceType>FixedUrl</SourceType>
       <PreviousLocation />
       <DeletePreviousFile>true</DeletePreviousFile>
       <Enabled>true</Enabled>
       <FileHippoId />
       <LastUpdated xsi:nil="true" />
       <TargetPath>{target}\{category}\</TargetPath>
       <FixedDownloadUrl>http://downloads.sourceforge.net/virtualdub/VirtualDub-{version}-AMD64.zip</FixedDownloadUrl>
       <Name>VirtualDub (x64)</Name>
     </ApplicationJob>
    </Jobs>

    The ffdshow (x64) entry will give you a glimpse of what my SF template is like... ;)

  8. @Tomorrow,

    I have a semi-reliable template for Sourceforge but I have chosen not to post it as every time we (FranciscoR and myself) have in the past, SF changed their site code almost immediately... 3 or 4 times if I recall correctly. Flo seems to think it was coincidence... maybe. See this thread... I avoid SF if their are any other options as their site inconsistencies make for a app entry maintenance nightmare... don't have time for it. ;)

  9. @FireStorm,

    All you have to do is spend a little time in research on the forum and it will become clear that it can indeed be done with Ketarin. I am doing it with more than 1300 apps currently in a very sophisticated folder structure. Dig in and enjoy the ride! :)

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.