martinrotter / rssguard

Feed reader (and podcast player) which supports RSS/ATOM/JSON and many web-based feed services.
GNU General Public License v3.0
1.64k stars 125 forks source link

[BUG]: RSS Guard 4.7.3 Lite doesn't recognize dates for CSS2RSS eBay feed items #1465

Closed RetroAbstract closed 3 months ago

RetroAbstract commented 3 months ago

Brief description of the issue

As of 4.7.3 Lite (and 4.7.2 Lite), when using CSS2RSS to create eBay feeds and using the script's item date selector, RSS Guard doesn't recognize the eBay item dates.

When I asked for help in trying to get the item dates for eBay items with CSS2RSS, the script's creator being on 4.3.3 No Web Engine successfully got RSS Guard to recongize eBay item dates with the following string for CSS2RSS: python css2rss.py "li.s-item" "span.s-item__listingDate" ~ "a[href*=UserReviews]" ~ "span.s-item__listingDate".

4.3.3 No Web-Engine:

3 4

As shown in the screenshots above, 4.3.3 No W-E finds 64 items and finds dates for 62 of them.

4.7.3 Lite being my daily driver, I copied and pasted the post-process script Owyn shared, but got different results.

4.3.7 Lite:

2 1

As shown in the screenshots above, 4.3.7 Lite finds 27 items (2 with no links) compared to 64 in 4.3.3 No W-E and doesn't find dates for any of the detected items.

Both 4.7.3 Lite and 4.3.3 No W-E are running the same version of CSS2RSS.

Something is clearly different in the way 4.3.3 No W-E and 4.7.3 Lite parses information from eBay with CSS2RSS.

How to reproduce the bug?

To compare both versions, have both 4.3.7 Lite and 4.3.3 No Web-Engine on your system alongside the latest version of CSS2RSS on your system, then:

  1. Create a new feed with this example eBay URL "nintendo switch"
  2. Enter the following string in the post-process script box: python css2rss.py "li.s-item" "span.s-item__listingDate" ~ "a[href*=UserReviews]" ~ "span.s-item__listingDate"
  3. Fetch the feed metadata, notice the differences in the description box outcome between versions 4.3.7 Lite and 4.3.3 No-Web Engine
  4. Fetch articles from the feed in both versions and notice also how in 4.3.7 Lite the fetched articles all have the same time relative to when fetched, and in 4.3.3 No W-E the articles have as date the data from the CSS2RSS item date selector

What was the expected result?

The expected result was for version 4.3.7 Lite to recognize the eBay item dates.

What actually happened?

4.3.7 Lite didn't and doesn't recognize the eBay item dates.

Debug log

N/A

Operating system and version

martinrotter commented 3 months ago

So this works fine with older RSS Guards?

RetroAbstract commented 3 months ago

So this works fine with older RSS Guards?

It does with 4.3.3 No Web-Engine, I don't know if it does with versions before that.

It might also work with versions after that but don't know when the difference was introduced. Definitely is in 4.7.2 Lite & 4.7.3 Lite.

martinrotter commented 3 months ago

Will test.

martinrotter commented 3 months ago

Here is what it returns for me with latest development RSS Guard.

image

martinrotter commented 3 months ago

image

RetroAbstract commented 3 months ago

Yes, after further testing with fresh databases and multiple previous RSS Guard Lite versions including the current one, it appears that the issue is happening exclusively on my main database for some reason.

Thank you for testing :slightly_smiling_face:

martinrotter commented 3 months ago

If you manage to somehow narrow possible causes down and/or send me your user-data for me to test and reproduce the problem, would be great.

RetroAbstract commented 3 months ago

If you manage to somehow narrow possible causes down and/or send me your user-data for me to test and reproduce the problem, would be great.

Found it. It was the user agent I have set to launch with RSS Guard :laughing: changed it and now it works fine.