XMLTV / xmltv

Utilities to obtain, generate, and post-process TV listings data in XMLTV format
GNU General Public License v2.0
275 stars 93 forks source link

tv_grab_uk_tvguide: suggestion to fix edge-case issue #104

Closed mkbloke closed 4 years ago

mkbloke commented 4 years ago

Today I got this in my logs:

Fetching https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk from server.
HTTP error: 200 OK
Retrying URL: https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk (attempt 1 of 5) 
Fetching https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk from cache without checking with server.
HTTP error: 200 OK
Retrying URL: https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk (attempt 2 of 5) 
Fetching https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk from cache without checking with server.
HTTP error: 200 OK
Retrying URL: https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk (attempt 3 of 5) 
Fetching https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk from cache without checking with server.
HTTP error: 200 OK
Retrying URL: https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk (attempt 4 of 5) 
Fetching https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk from cache without checking with server.
HTTP error: 200 OK
Retrying URL: https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk (attempt 5 of 5) 
Fetching https://www.tvguide.co.uk/detail/3737400/29323948/bfi-see-yourself-on-screen-challenge-city-walk from cache without checking with server.
HTTP error: 200 OK
Can't call method "delete" on an undefined value at /home/mythtv-iptv-setup/utils/tv_grab_uk_tvguide line 423.

The HTTP errors on the given URL are transient, I think, but this is concerning the last line in the above log.

Would it be better to move: https://github.com/XMLTV/xmltv/blob/585c86e006adbb8b06ac5d34cd3e6e351936d2ec/grab/uk_tvguide/tv_grab_uk_tvguide#L423 into the last if statement, as that already tests for $showdetail? Either that or alter the line to $showdetail->delete() if $showdetail; instead?

It's just a suggestion for something that's very rare. I've not had any issues with the tree parsing of retrieved pages for a long time now.

honir commented 4 years ago

Good idea - many thanks. Change committed