From 44d97e54fb6f39ee103140251d4138f469fc5405 Mon Sep 17 00:00:00 2001 From: jim Date: Wed, 19 Nov 2025 16:08:34 -0600 Subject: [PATCH] Fixed pulling of notes when API returns NULL --- URLNotesGrabberCORE/DataAccess.cs | 12 ++------- URLNotesGrabberCORE/Program.cs | 41 ++++++++++++++++++++++++++++++ URLNotesGrabberCORE/TL.db | Bin 17461248 -> 17485824 bytes URLNotesGrabberCORE/TL.db-journal | Bin 12824 -> 0 bytes 4 files changed, 43 insertions(+), 10 deletions(-) delete mode 100644 URLNotesGrabberCORE/TL.db-journal diff --git a/URLNotesGrabberCORE/DataAccess.cs b/URLNotesGrabberCORE/DataAccess.cs index 30c6bcb..c12f78c 100644 --- a/URLNotesGrabberCORE/DataAccess.cs +++ b/URLNotesGrabberCORE/DataAccess.cs @@ -109,6 +109,7 @@ namespace URLNotesGrabberCORE connection.Close(); } } + public static void AddPost(string blogName, long postID, string reblogURL, string postDate, string postURL, string slug, string reblogKey, string reblogName, string summary, string quote, string body, string tags, string link, string photoURL, string photoCaption, string downloadedFiles, string audioCaption, string question, string answer, string title, bool hasImage, string DBPath = @"TL.db") { try { AddBlog(blogName, DBPath); } catch { } @@ -208,7 +209,6 @@ namespace URLNotesGrabberCORE } } - public static bool AddNote(string rootBlogName, string noteBlogName, long postID, long timestamp, string type, string DBPath = @"TL.db") { //try { AddPost(rootBlogName, postID, DBPath); } catch { } @@ -323,6 +323,7 @@ namespace URLNotesGrabberCORE } return posts; } + public static List> GetReplies(string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); @@ -365,7 +366,6 @@ namespace URLNotesGrabberCORE return posts; } - public static int GetAPICount(string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); @@ -407,7 +407,6 @@ namespace URLNotesGrabberCORE return count; } - public static List GetBlogs(bool reblogsOnly, int from, int to, int top, string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); @@ -447,7 +446,6 @@ namespace URLNotesGrabberCORE return blogs; } - public static List GetBlogsAll(bool reblogsOnly, int from, int to, int top, string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); @@ -515,7 +513,6 @@ namespace URLNotesGrabberCORE } } - public static void UpdatePostMarkNotFound(string blogName, long postID, string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); @@ -540,7 +537,6 @@ namespace URLNotesGrabberCORE } } - public static void UpdatePostSetDate(string blogName, long postID, string postDate, string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); @@ -565,7 +561,6 @@ namespace URLNotesGrabberCORE } } - public static bool UpdateNote(string rootBlogName, string noteBlogName, long postID, long timestamp, string type, string DBPath = @"TL.db") { //try { AddPost(rootBlogName, postID, DBPath); } catch { } @@ -600,7 +595,6 @@ namespace URLNotesGrabberCORE return false; } - public static void UpdatePost(string blogName, long postID, string reblogURL, string postDate, string postURL, string slug, string reblogKey, string reblogName, string summary, string quote, string body, string tags, string link, string photoURL, string photoCaption, string downloadedFiles, string audioCaption, string question, string answer, string title, bool hasImage, string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); @@ -646,7 +640,6 @@ namespace URLNotesGrabberCORE } } - public static void UpdateBlogOutput(string blogName, string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); @@ -671,7 +664,6 @@ namespace URLNotesGrabberCORE } } - public static int UpdateAPICount(string DBPath = @"TL.db") { SQLiteConnection connection = new SQLiteConnection("Data Source=" + DBPath); diff --git a/URLNotesGrabberCORE/Program.cs b/URLNotesGrabberCORE/Program.cs index 6ae07ea..bb9fad2 100644 --- a/URLNotesGrabberCORE/Program.cs +++ b/URLNotesGrabberCORE/Program.cs @@ -74,6 +74,38 @@ namespace URLNotesGrabberCORE var response = APIAccess.GrabNotes(blogName, postID).GetAwaiter().GetResult(); List> notes = new List>(); + // Check for API errors + if (response.statusCode == "NotFound") + { + Console.WriteLine($"ERROR: Post not found - {blogName}/{postID}"); + break; + } + if (response.statusCode == "TooManyRequests") + { + Console.WriteLine($"ERROR: Rate limited - retry in {response.retryInSeconds} seconds"); + break; + } + if (!string.IsNullOrEmpty(response.statusCode)) + { + Console.WriteLine($"ERROR: API returned status code: {response.statusCode}"); + break; + } + + // Check for null response + if (response.response == null) + { + Console.WriteLine("ERROR: API response is null"); + break; + } + + // Check for null notes + if (response.response.notes == null) + { + Console.WriteLine("ERROR: Notes collection is null (post may have 0 notes)"); + break; + } + + Console.WriteLine($"Processing {response.response.notes.Count} notes..."); foreach (var note in response.response.notes) { note.reblog_parent_blog_name = blogName; note.post_id = postID.ToString(); @@ -86,6 +118,13 @@ namespace URLNotesGrabberCORE { response = APIAccess.GrabNotes(blogName, postID, response.response._links.next.query_params.before_timestamp).GetAwaiter().GetResult(); + if (response.response?.notes == null) + { + Console.WriteLine("ERROR: Notes collection became null during pagination"); + break; + } + + Console.WriteLine($"Processing {response.response.notes.Count} more notes..."); foreach (var note in response.response.notes) { note.reblog_parent_blog_name = blogName; note.post_id = postID.ToString(); ; @@ -94,6 +133,8 @@ namespace URLNotesGrabberCORE break; } } + + Console.WriteLine("Test completed successfully"); #endregion break; diff --git a/URLNotesGrabberCORE/TL.db b/URLNotesGrabberCORE/TL.db index 877b2cda8144e79c39e78bdff532959098b9c535..c8b6a853b017192ecb6c0a025084148b38cc99d2 100644 GIT binary patch delta 22839 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 delta 7789 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 WuVpj2PMi(Lkcu+1;bM@D!v6s^z1!*l diff --git a/URLNotesGrabberCORE/TL.db-journal b/URLNotesGrabberCORE/TL.db-journal deleted file mode 100644 index 906fd7d7e2ed45ff63c79c99d497c64248fe8842..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12824 zcmeHNYj7LY6_)IkWUVcmLOrgBW^kP`jvuluJBi~2C{E%)CXVAcb|4{OR?=N*HXb z0oPu)Z^&02XbP+g+!gq9;M2-km8&W@SMDwiRUWQls}_{I$~(*X@(0SF^JiRpU1!}h z-6Q@-{I9Tnb^#k>?=N|!)bHNvezNMfRWFrXRI;+<7WZ4;54`)m_j%WOTRdkyFM1yI ztoMYNub7vahe{r1GRz=TSNeYGlcjf--cTh~oU7PhabLx#zu!NjY@%#W*`~5(W#9L` zH4oDxu*3AOqX8)|xqD2yS#rzc1n2nBG6T4}O@X37mK z5~pek!ojqF$51AqI5HmV6$}QiMaD9Si(^$w3emuZHtJ4e36{Yol2rEI&f8A?4SI6u z{2j!dNL&%H8b@J8P&=6~TPXZTR`}tP6oHFekdrti63;N_Iw-cqihcXiR|$5#hSdls ziU|}AM1G1!xR zWX?2E*KDwF?z)t?hEWCu#}Hypw^E1pr zW;scYkPkjALRQ2?4rAu4MoOx+A#Hz}l2ip{H0He7zet>u(sG);^Vs~q3|;Bs4{pgu z2WRhiPP8~Zr`Vp~-EMSnV+3I=q!9BTN9@9V9~xd`SqVa{6U>{P)Y*26v$3X;ae`G9 zPQpn}flNwjN>W73TXQL;+e-P~Q)>x@2g(?Nfr4PP1QnDLQk=-V-A-wc`~`uJ1$uWA znkeun!bxG2MuHM$-kC-57hCb(*c;R{2xE$iGyio0^5=JNAwWFFp|FIQcO8eu#J)cf zU=pcF2}+y>njkaB95ZF&@vJ6r3CI#jm1X9A8pm3ju`$u~nvqtr6hUK>oR)Y+KvI-B zK96<~G^ZdS{PBso#2r~eL}g?R6i1dt4I@S35{Q{_?8otaXJ};NNa3P_oD?<+i20z4 z+6md%dEyrYu4s}3lE*7@B9TeSLIg1%nxba$?Qsv`y^!$99NGm?Y>PX$1PB2%Ly=<{2}FcLMBU&CGM@$stJX%_j*r(G zo(Yhs(O{BGW9Ed@sNs)~Ur20B!G7kLa&K?Ho?s=C`Y6Smyv!GZ$sy#%Tue|^m|8R( z#1Mn-ZuYU6``(#(r7K?fMGc`O6Z0X>@=1ugGMcF{q4iQ8D*RR^uH z+Og>hLW)Tojtd~Pa!N%=jR(f5FxT2L7G(of$jO-6Ul^(#n_nPSKwP9K$YBJOQVDFN z@YkMa8gk=6U9I zvjiwaUtj-(VIUz$QC<@zSZ6^Mpdy)v>o5Y3I88M18O_}W6(e(bcGO&Q6|DQvA6~wh zxRsD0gB56-8-oXvKrzob^Ql`XM`=QCBqK>gL6~2$>iL4sueDGESm8Gs{^S!rH`lpV zf=FEAIW@sSn!toW>|jk$J!k1Uuof1_R?-H;iXH8YDL)q4TXZg84@*rbPqdilwD|xF zp?iKvYnc?}E=;JAxFAM7r<{7tANVqx>nQ8=MN4YCcPe)6X76= zdp>gte;j?J5@3G2pE@}bU;o5vBQW`dPnl0%U*u-%IyY+2Tr4XS1{}nr4x4k>I#XrAI*=G25BQPNar#3wK{ByMkzwP($5_pe3N)6d|C0hVvc((<6 z_&6@BF-_ukq>dR*cIr0(7v$B>l#|5H)~}}|TZ1;FtjxCS>wpF_YiG+=YTNbefB{l# z$FP;#HhnEH9Fn>~Md{8>hrWgqY)uppva-8CzZNJUyLMiEqx81u*8m%&*N$zG-%fos zph14^&`uKEsgF35oMgB~A9nW3BE@s`Re%O5w)1NmIquYloLzI0*`z=t{XAVhnP#ZYv3DW{sQil@Ah9w z8*Sqo0##>SEPJ)9Dpa+%@{THRWl!Kp#jAnc?9~;!?1{yz#RwE5P>et^0>uavBT$S$ zF#`YZ5x9NS@2jb)asOV|t4_V?A*(`)s0vsi!qLOA+3 z07s?j{lk6N4!6P;a&zh8djG)4^1h*^i^!#`IXob%2ww%~NRWb}=FPgreM@>r`iJW} z2+XJ-M~3=yjR9>5d5Ku>Upg?{cU9j|K7-g=46ldt2su0C*04aFn`95H7_J)_>F+n2 z33Ye&bkCj(M`*H+E=_Q;=?D}@?B@BoO4MRGCx+-T)@3MDcqu%- zoP~09%FSUehI9A&;fz%7*B}((a-Ku<$|4TV+{#i8w;0Y*h%&tDk1iqaXLC1tH8{j( zfv?oygjZezy%J6%CC3{U;2pL3b8u+s^4_5}b<6tJ%*tg(>tsqau}w{^x90L1w+mkH zqm6h2Y$c#kI0Puu-=j3IMnm*p`R27gnv7d6qRB`Th<=piCnLRPB;ydAMQ~2YYz~m; zOgL5`NtIP9mq?oVLa@V`q(cw$%$dDxtrKBT^bG1fBv;zZ%spk zJ42(84H-ETF?;HFUtUb6-kGI_#a1D@u~kAFS|w3!m7?&0p_d|RTIQi`Usu?6Xi5tq zuT$G0vu)x})2*fSd2KdYBjLsLgURF5yueQ40ZOqD-o3BT;0Ua0J_d8NlEG)6WF)4{ zbTOr_jE3kx&t|{dSJT+&-n^3bd@(18ncl&ri^#$AydNd`zUSRD`j9U_lZ|`}*C`R) f?kVxsEN^rg5_uL!LwP?-VLmA%bIQB}S3LJW7}OB=