@@ -173,36 +173,40 @@ async public Task<string> UpdateTasksParse()
173173 "1675" , "257" , "875" , "263" , "2073" , "550" , "2124" , "1470" , "528" , "486" , "854" , "2079" , "1336" , "2171" , "1339" , "2455" , "1434" , "2350" , "1472" , "2068" , "2016"
174174 } )
175175 {
176- // Получаем html
177- string html = await HttpClient . Get ( $ "{ AppInit . conf . Rutracker . rqHost ( ) } /forum/viewforum.php?f={ cat } ", useproxy : AppInit . conf . Rutracker . useproxy ) ;
178- if ( html == null )
179- continue ;
176+ try
177+ {
178+ // Получаем html
179+ string html = await HttpClient . Get ( $ "{ AppInit . conf . Rutracker . rqHost ( ) } /forum/viewforum.php?f={ cat } ", useproxy : AppInit . conf . Rutracker . useproxy ) ;
180+ if ( html == null )
181+ continue ;
180182
181- // Максимальное количиство страниц
182- int . TryParse ( Regex . Match ( html , "Страница <b>1</b> из <b>([0-9]+)</b>" ) . Groups [ 1 ] . Value , out int maxpages ) ;
183+ // Максимальное количиство страниц
184+ int . TryParse ( Regex . Match ( html , "Страница <b>1</b> из <b>([0-9]+)</b>" ) . Groups [ 1 ] . Value , out int maxpages ) ;
183185
184- if ( maxpages > 0 )
185- {
186- // Загружаем список страниц в список задач
187- for ( int page = 0 ; page <= maxpages ; page ++ )
186+ if ( maxpages > 0 )
187+ {
188+ // Загружаем список страниц в список задач
189+ for ( int page = 0 ; page <= maxpages ; page ++ )
190+ {
191+ if ( ! taskParse . ContainsKey ( cat ) )
192+ taskParse . Add ( cat , new List < TaskParse > ( ) ) ;
193+
194+ var val = taskParse [ cat ] ;
195+ if ( val . Find ( i => i . page == page ) == null )
196+ val . Add ( new TaskParse ( page ) ) ;
197+ }
198+ }
199+ else
188200 {
189201 if ( ! taskParse . ContainsKey ( cat ) )
190202 taskParse . Add ( cat , new List < TaskParse > ( ) ) ;
191203
192204 var val = taskParse [ cat ] ;
193- if ( val . Find ( i => i . page == page ) == null )
194- val . Add ( new TaskParse ( page ) ) ;
205+ if ( val . Find ( i => i . page == 1 ) == null )
206+ val . Add ( new TaskParse ( 1 ) ) ;
195207 }
196208 }
197- else
198- {
199- if ( ! taskParse . ContainsKey ( cat ) )
200- taskParse . Add ( cat , new List < TaskParse > ( ) ) ;
201-
202- var val = taskParse [ cat ] ;
203- if ( val . Find ( i => i . page == 1 ) == null )
204- val . Add ( new TaskParse ( 1 ) ) ;
205- }
209+ catch { }
206210 }
207211
208212 IO . File . WriteAllText ( "Data/temp/rutracker_taskParse.json" , JsonConvert . SerializeObject ( taskParse ) ) ;
@@ -222,9 +226,9 @@ async public Task<string> ParseAllTask()
222226
223227 try
224228 {
225- foreach ( var task in taskParse )
229+ foreach ( var task in taskParse . ToArray ( ) )
226230 {
227- foreach ( var val in task . Value )
231+ foreach ( var val in task . Value . ToArray ( ) )
228232 {
229233 if ( DateTime . Today == val . updateTime )
230234 continue ;
0 commit comments