为什么我有时会从 BBC Weather RSS 提要下载垃圾数据? [英] Why am I sometimes downloading garbage data from BBC Weather RSS feeds?

查看:39
本文介绍了为什么我有时会从 BBC Weather RSS 提要下载垃圾数据?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

从 BBC 的 RSS 天气提要下载时,我在随机情况下看到奇怪的损坏的文本/数据.奇怪的是,如果我直接从网络加载而不是下载,就会发生这种情况.会不会是内存问题?它是如此随机,但 70% 的时间,其中一个位置会下载错误.

I'm getting weird corrupted looking text / data on random occasions when downloading from the BBC's RSS weather feed. Strangely, this happens if I directly load from the web rather than download as well. Could it be a memory problem? It is so random, but 70% of the time, one of the locations will be downloaded wrong.

下载订阅:

  Public Sub DownloadWeather()

    If IsConnectionAvailable() = True Then

        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2657832/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Aberdeen.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2656752/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Aviemore.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2653609/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Barra.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2650752/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Dundee.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2650798/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Dumfries.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2651245/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Dingwall.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2650225/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Edinburgh.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2648579/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Glasgow.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2636239/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Harris.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2646088/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Inverness.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2655051/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Islay.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2636790/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Lewis.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2635754/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Mull.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2641108/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Oban.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2645198/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Orkney.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2640358/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Perth.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2644605/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Shetland.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2640006/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Skye.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2635881/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Thurso.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2643811/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Uist.rss")
        Module_XML_Download.DownloadXML("http://open.live.bbc.co.uk/weather/feeds/en/2635199/3dayforecast.rss", My.Settings.DataMainFolder & "\" & My.Settings.DataWeatherXMLFolder & "\Ullapool.rss")

    End If

End Sub


  Public Sub DownloadXML(ByVal URL As String, ByVal SaveAs As String)
    Try
        Dim WebClient As New System.Net.WebClient()

        WebClient.DownloadFile(URL, SaveAs)
        If My.Settings.LogXMLDownloaded = True Then
            Module_Log.WriteLog(Now.ToString & "   XML Downloaded: " & SaveAs)
        End If

    Catch _Exception As Exception

        ' Error
        ' MsgBox("Exception caught in process: {0}", _Exception.ToString())
        If My.Settings.LogXMLDownloadError = True Then
            Module_Log.WriteLog(Now.ToString & "   XML DL Error: " & _Exception.Message)
        End If
    End Try

End Sub

在某些 location.rss 文件中随机出现的奇怪垃圾数据:

The weird garbage data that appears, randomly on some of the location.rss files:

‹       Í–áNÛ:Ç¿OÚ;EºÒ¦µ±"ÚEiÑ…‰Mº Mƒ±ÈMÜÆ"±#Û¡ë[íöd÷8MK      i_šÄ>>ÿÿ9þ9Mzð³*ášk#"œxO=à2S¹‹‰÷ýüx8ö¦oߤÚÀPifU5ñ

kë„åré/#_é )É¿8éu®pÕÐõP¾¾õn´CÔF%€4+˜"¼lðÑ &¥WPh>ßæS5—~)®¹?›e~μæŠ,9³×dÎyn—$ÜßÇ£$ÊÙj®4Ϙ±~««y9ñ/çØUÍ'«ëRdÌ¢‚°ÈÆ„¶äÓÃ#ø±Ö€!w 3|.™Y¨å ¾KayÿasU¥d½´Ëãê˜ö:²ë½³œ'6´[–siQ;sÓhˆÅÀ¼/ÞiÃ\«z&dV6n7a¹²¼ª¹f¶Ñ˜Ìa)ðGHÌSµÕ§¤¯¶ñÍä¢a>å8¿}è&3U¯´Xvz´¹KàÝÑ{8ÔÂSàU±Ü¹uFŽ"®•n¥8‡{Ûa¹®ay.\ +/8|°ˆ««¸Âò!ç–‰Ò¤äÆ@ç¨nfŸ˜åÓc-P8ÅŽ…4ˆ'"!|¥)ÙvëDuSÖËí:fjt¹Ùvc±öÌ•*îl=õ#?¤i]"2%ñWæâZä¶ ]®Ç¸¼Tò²t_Î$ý...˜§Ä‰lŸG.\ŠÜÓa'õÝv¢àm‹ÝLwÛuôÛ–bª»-Ä}@h8qËà¸õ§ì§¨šÎoxLp~ÿ:‚wqøû×ñ{8r7d¿Ø‹\ÄNŸŸ\õú™Ð»µ÷ÉÜßàqƒøáŽ×'и¬ œ©ÆÈAÂËU7VãËe¯êb ˆ™(…ÅŽ]p½,Ϲäl_jåxåU–ÍZñÄñyÖH-®¥qÄpxvÞŽŽG5ÄC¹¡ûŽþóO®\4ß-æ+fv‚žxsVî=i‹†tèT†4ô|£åSJQ.qz.}O¬ýKIj%¤Æ±?Þ±Òáž·æ·èÞÐz/¹gnSŸÈ.]³Afw´F#~vƒ?g·ïvûwÙ}€ÚøÙÔî÷©¡6Ú¥6þ©þjùbÌîµÑÇ6|fûÿð}í{´ãÛÐŽ£>´Á#лЎž-mA^ Úð´ÖkA‹lÛOüÔ}lãõí›ÿÖ¨Œ

kë„åré/#_é )É¿8éu®pÕ­ÐõP¾¾õn´CÔF%€4+˜"¼lðÑ &¥WPh>ßæS5—~)®¹?›e~¦üæŠ,9³×dÎyn—$ÜßÇ£$ÊÙj®4Ϙ±~««y9ñ/çØUÍ'«ëRdÌ¢‚°ÈÆ„¶äÓÃÃ#ø±Ö€!w 3|.™Y¨å ¾KayÿasU¥d½´Ëãê˜ö:²ë½³œ’6´[–s"iQ;sÓhˆÅÀ¼/ÞiÃ\« z& dV6n7a¹²¼ª¹f¶Ñ˜Ìa)ðGHÌSµÕ§¤¯¶ñÍä¢a>å8¿}è&3U¯´Xvz´¹KàÝÑ{8Ô SàU±Ü¹uFŽ"®•n¥8‡{Ûa¹®ay.\ +/8¦°ˆ««¸Âò!ç–‰Ò¤äÆ@ç¨nfŸ˜åÓc-P8ÅŽ…4ˆ ’"!| ¥)ÙvëDuSÖËí:fjt¹Ùvc±öÌ•*îl=õ#?¤i]"2%ñWæâZä ¶ ]®Ç¸¼Tò²t_Î$ý…˜§Ä‰lŸG.\ŠÜÓa’õÝv¢àm‹ÝLwÛuôÛ–bª»-Ä}@h8qËà¸õ§ì§¨š ÎoxLp~ÿ:‚wqøû×ñ{8r7d¿Ø‹\ÄNŸŸ\õú™Ð»µ÷ÉÜßàqƒøáŽ×'и¬ œ©ÆÈ"AÂËU7VãËe¯êb ˆ™(…ÅŽ]p½‚ÏJåøª¹1k"Õl _šJämØhü2xß„¹J ÂU–ÍZñÄñyÖH-®¥qÄpxvÞŽŽG5ÄC¹¡ûŽþóO®\4ß-æ+fv‚žxsVî=i‹†tèT†4ô|£åSJQ.qz.}O¬ýKIj%¤Æ±?Þ±ÒážÆ£ý(%·æ·èÞÐz/¹gnSŸÈ.]³Afw´F#~vƒ?g·ïïvûwÙ}€ÚøÙÔî÷© ¡6Ú¥6þ© þjùbÌîµÑÇ6|fûÿð}í{´ãÛÐŽ£>´Á#лЎž-mA ^ Úð´ÖkA‹lÛOüÔ}lãõí›ÿÖ¨Œ

推荐答案

当我从我网站的代码中请求 BBC Weather RSS 提要时,我第一次看到完全相同的内容.

I've just seen the same exact thing for the first time when requesting from BBC Weather RSS feeds from the code in my website.

我刚刚将使用 BBC 提要的网站添加到 CloudFlare,但我看不出这有什么关系.

I just added the website which was using the BBC feeds to CloudFlare but I can't see how that might be related.

我在 BBC RSS 提要 URL 的末尾添加了一个随机查询字符串,因此我的 URL 如下所示:

I added a random query string to the end of the BBC RSS feed URL so my URL looked like this:

http://open.live.bbc.co.uk/weather/feeds/en/2634135/3dayforecast.rss?123

问题立即得到解决.

请注意,如果我直接在自己的浏览器中手动请求提要,则效果很好.

Note that if I manually requested the feed directly in my own browser, it was working fine.

这篇关于为什么我有时会从 BBC Weather RSS 提要下载垃圾数据?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆