• Relf, some help or code please

    From DFS@21:1/5 to All on Mon Apr 8 19:00:17 2024
    A while back you said downloading Usenet post info from glorb.com was
    really fast.

    glorb.com doesn't seem to be around any more.

    How and where are you downloading Usenet messages?

    I use blocknews and python nntplib and SuckMT (Windows), but they're not
    quick enough any more. blocknews has suddenly gone downhill.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Relf@21:1/5 to DFS on Mon Apr 8 20:06:13 2024
    DFS asked me:
    A while back you said downloading Usenet post info from glorb.com was really fast.
    glorb.com doesn't seem to be around any more.

    Yes, Glorb threw in the towel many years ago (2018?).

    How and where are you downloading Usenet messages?
    I use blocknews and python nntplib and SuckMT (Windows), but they're not quick enough any more. blocknews has suddenly gone downhill.

    I switch servers on the fly, willy nilly.
    When BlockNews fails, I use UsenetNews, & vice versa.
    Oddly, they don't both fail at the same time.

    Instead of switching servers, you could just wait it out.

    MessageID (instead of Article Number) "bookmarking" is tricky.
    I list MessageIDs (100 at a time), starting from the highest Article Number, until I find one of the 10 MessageID "bookmarks" I've saved.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From DFS@21:1/5 to Relf on Mon Apr 8 23:51:01 2024
    On 4/8/2024 11:06 PM, Relf wrote:
    DFS asked me:
    A while back you said downloading Usenet post info from glorb.com was really fast.
    glorb.com doesn't seem to be around any more.

    Yes, Glorb threw in the towel many years ago (2018?).

    How and where are you downloading Usenet messages?
    I use blocknews and python nntplib and SuckMT (Windows), but they're not
    quick enough any more. blocknews has suddenly gone downhill.

    I switch servers on the fly, willy nilly.
    When BlockNews fails, I use UsenetNews, & vice versa.
    Oddly, they don't both fail at the same time.

    Instead of switching servers, you could just wait it out.

    MessageID (instead of Article Number) "bookmarking" is tricky.
    I list MessageIDs (100 at a time), starting from the highest Article Number, until I find one of the 10 MessageID "bookmarks" I've saved.


    Can you give me the code you run to retrieve articles? How were you
    getting 1000 articles in 4 seconds from glorb?

    The python code I've relied on for years has become very slow and
    unstable when running it against blocknews. Connections are dropped all
    the time.

    SuckMT is OK fast, but it drops connections too.

    I want to stay with blocknews because it has articles going back to
    2003, and they might recover from their current woes.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Relf@21:1/5 to All on Mon Apr 8 21:24:55 2024
    You (DFS) replied ( to me ):
    MessageID (instead of Article Number) "bookmarking" is tricky.
    I list MessageIDs (100 at a time), starting from the highest Article Number,
    until I find one of the 10 Message-ID "bookmarks" I've saved.

    Can you give me the code you run to retrieve articles?
    How were you getting 1000 articles in 4 seconds from glorb?

    Glorb was lightning fast.
    When possible, I sent it 100 commands at a time, instead of individually.

    From "z1.CPP" in "Jeff-Relf.Me/z1.ZIP":

    typedef __int64 i64 ; i64 _LowArtNum, _HighArtNum, HighArtNum ;

    const int max_BookMarks = 10, MIDsPerPage = 100, Max_szMID = 200, Max_Sz_BookMark = max_BookMarks * Max_szMID ;

    OpenGroup₍₎( LnP NG ) { // 211 303,341,573 1,844,605,951 2,147,947,523 Comp.OS.Linux.Advocacy
    if ( !Go( L"Group %s", LowerCaseNG( NG ) ) ) { Sh( L"No Such NewsGroup, “ %c%s%c ” ?", ChNew, NG, ChText ); return 0 ; }
    strCpy( _T, *Ln.PP ), P = _T, gTok, gTok, gTok, LowArtNum = AtoI( Tok ) - 1, gTok, HighArtNum = AtoI( Tok );
    Sh( L"%s Articles; From: %s To: %s .", Commas( HighArtNum - LowArtNum ), Commas( LowArtNum + 1 ), Commas( HighArtNum ) ); return HighArtNum ; }

    _LowArtNum = HighArtNum - MIDsPerPage - 1 ;
    Go( L"xHdr Message-ID %I64d-%I64d", _LowArtNum, _HighArtNum );

    The python code I've relied on for years has become very slow and
    unstable when running it against blocknews. Connections are dropped all
    the time. SuckMT is OK fast, but it drops connections too.

    I want to stay with blocknews because it has articles going back to
    2003, and they might recover from their current woes.

    Try BlockNews and/or UsenetNews again, an hour later.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From DFS@21:1/5 to Relf on Thu Apr 11 10:40:24 2024
    On 4/9/2024 12:24 AM, Relf wrote:
    You (DFS) replied ( to me ):
    MessageID (instead of Article Number) "bookmarking" is tricky.
    I list MessageIDs (100 at a time), starting from the highest Article Number,
    until I find one of the 10 Message-ID "bookmarks" I've saved.

    Can you give me the code you run to retrieve articles?
    How were you getting 1000 articles in 4 seconds from glorb?

    Glorb was lightning fast.
    When possible, I sent it 100 commands at a time, instead of individually.

    From "z1.CPP" in "Jeff-Relf.Me/z1.ZIP":

    typedef __int64 i64 ; i64 _LowArtNum, _HighArtNum, HighArtNum ;

    const int max_BookMarks = 10, MIDsPerPage = 100, Max_szMID = 200, Max_Sz_BookMark = max_BookMarks * Max_szMID ;

    OpenGroup₍₎( LnP NG ) { // 211 303,341,573 1,844,605,951 2,147,947,523 Comp.OS.Linux.Advocacy
    if ( !Go( L"Group %s", LowerCaseNG( NG ) ) ) { Sh( L"No Such NewsGroup, “ %c%s%c ” ?", ChNew, NG, ChText ); return 0 ; }
    strCpy( _T, *Ln.PP ), P = _T, gTok, gTok, gTok, LowArtNum = AtoI( Tok ) - 1, gTok, HighArtNum = AtoI( Tok );
    Sh( L"%s Articles; From: %s To: %s .", Commas( HighArtNum - LowArtNum ), Commas( LowArtNum + 1 ), Commas( HighArtNum ) ); return HighArtNum ; }

    _LowArtNum = HighArtNum - MIDsPerPage - 1 ;
    Go( L"xHdr Message-ID %I64d-%I64d", _LowArtNum, _HighArtNum );

    The python code I've relied on for years has become very slow and
    unstable when running it against blocknews. Connections are dropped all
    the time. SuckMT is OK fast, but it drops connections too.

    I want to stay with blocknews because it has articles going back to
    2003, and they might recover from their current woes.

    Try BlockNews and/or UsenetNews again, an hour later.


    It's been slow for weeks... well, my previously quick python code, anyway.

    I used to do head and body commands (via Python nntplib), but they don't
    work very well lately. The 'article' command is pretty quick, though.

    This code prints the 211 response for the group, then sends the
    'article' command one at a time, parses and displays the response. It's
    pretty fast - up to ~9 articles retrieved per second late in the evening.

    ==============================================================================================
    import nntplib, time
    from datetime import datetime

    startStr = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    startTime = time.time()

    srvName = 'usnews.blocknews.net'
    grpName = 'comp.os.linux.advocacy'
    news = nntplib.NNTP(srvName,119,'dfsblocknews','hogsblocknews')
    r,a,b,e,g = news.group(grpName)
    print(r)

    cnt, found, notfound = 0,0,0
    for artID in range(904779, 904785):
    print("------------------------------------------------------------------------------")
    print(artID)
    msgID, msg = 0,''
    try:
    response, info = news.article(artID)
    artID = info[0]
    msgID = info[1]
    msg = info[2]

    for line in msg:
    line = line.decode('latin-1')
    if line != "Path: not-for-mail":
    print(line)
    found += 1
    except (nntplib.NNTPTemporaryError, nntplib.NNTPPermanentError) as err:
    print('Error:',err)
    notfound += 1
    cnt += 1 print("------------------------------------------------------------------------------")
    print("done")

    endStr = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    totTime = time.time() - startTime
    print("\nStart: " + startStr)
    print("End : " + endStr)
    print("%.1fs to request %d messages (%.f per sec)" % (totTime, cnt, cnt
    / totTime))
    print("%d messages downloaded" % (found))
    print("%d messages not found" % (notfound)) ==============================================================================================

    Save it as a .py file and run it:
    $ python prog.py


    a minute ago, from blocknews:

    211 1795999 899518 2695516 comp.os.linux.advocacy

    But blocknews recently screwed up their article numbering, and there are
    a lot of gaps in the sequence, so there aren't 1795999 articles
    available on their server.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Relf@21:1/5 to All on Thu Apr 11 08:07:17 2024
    You (DFS) replied ( to me ):
    I list MessageIDs (100 at a time), starting from the highest Article Number,
    until I find one of the 10 MessageID "bookmarks" I've saved.

    I used to do head and body commands (via Python nntplib), but they don't
    work very well lately. The 'article' command is pretty quick, though.
    info = news.article(artID) artID = info[0] msgID = info[1] msg = info[2]

    Yes, instead of "head" and "body", I use the "article" command.

    a minute ago, from blocknews:
    211 1795999 899518 2695516 comp.os.linux.advocacy

    But blocknews recently screwed up their article numbering,
    and there are a lot of gaps in the sequence,
    so there aren't 1795999 articles available on their server.

    At times, blocknews is missing some articles and such;
    some seconds later, they're back.

    My code actually checks that blocknews has the 10 MessageIDs
    that makes up my "bookmark", in the order expected;
    if it doesn't, it pays to try again later.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From DFS@21:1/5 to Relf on Thu Apr 11 17:05:13 2024
    On 4/11/2024 11:07 AM, Relf wrote:
    You (DFS) replied ( to me ):
    I list MessageIDs (100 at a time), starting from the highest Article Number,
    until I find one of the 10 MessageID "bookmarks" I've saved.

    I used to do head and body commands (via Python nntplib), but they don't
    work very well lately. The 'article' command is pretty quick, though.
    info = news.article(artID) artID = info[0] msgID = info[1] msg = info[2]

    Yes, instead of "head" and "body", I use the "article" command.


    The SuckMT program is a multithreaded Usenet downloader for Windows, but
    it continually disconnects after around 4K posts are downloaded.



    a minute ago, from blocknews:
    211 1795999 899518 2695516 comp.os.linux.advocacy

    But blocknews recently screwed up their article numbering,
    and there are a lot of gaps in the sequence,
    so there aren't 1795999 articles available on their server.

    At times, blocknews is missing some articles and such;
    some seconds later, they're back.

    Did that just start? For years BN has been rock solid and fast, but in
    the past few months it's not working too well (for me).


    My code actually checks that blocknews has the 10 MessageIDs
    that makes up my "bookmark", in the order expected;
    if it doesn't, it pays to try again later.


    Which server(s) do you use to build a bookmark of 10 Msg-IDs in a
    specific order? What's the order?

    Note also that eternal-september blocks a variety of nyms. Using ES, I
    never see anything from alt.checkmate in cola (which is good).

    blocknews allows crossposting from alt.checkmate, so their data often
    won't match with eternal-september.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Relf@21:1/5 to All on Thu Apr 11 15:51:57 2024
    You (DFS) replied ( to me ):
    At times, blocknews is missing some articles and such;
    some seconds later, they're back.

    Did that just start? For years BN has been rock solid and fast,
    but in the past few months it's not working too well (for me).

    Yes, it's new. It took 10+ minutes for my "Jeff-Relf.Me@Apr.11--8.27am.Seattle.2024" post to show up.

    3:16pm, Seattle, BlockNews reported:
    29 Requested posts, got all 29 in 6 Secs.

    CntNew / 30_DayCnt
    7 / 513 DFS
    4 / 579 Ahlstrom
    1 / 146 Huntzinger
    2 / 243 ChrisV
    1 / 57 Tyrone│none@none_none
    1 / 597 Crump

    My code actually checks that blocknews has the 10 MessageIDs
    that makes up my "bookmark", in the order expected;
    if it doesn't, it pays to try again later.

    Which server(s) do you use to build a bookmark of 10 Msg-IDs in a
    specific order? What's the order?

    Any server, every server; on the fly, willy-nilly.
    At 3:16pm, it was:

    DFS uv9lnt$1td30$3@dont-email.me
    DFS uv9l6b$1td30$2@dont-email.me
    DFS uv9kju$1td30$1@dont-email.me
    Crump j9lg1jdgdbq9h9q1l3uturml5q36vuuqku@4ax.com
    ChrisV 2fkg1j1bq7291jl07o13s32l9r2abd3t7c@4ax.com
    DFS uv9jaa$1t4ha$1@dont-email.me
    Crump onig1jhgmcpjab63lf6gbrt6prup87jjch@4ax.com
    DFS uv9ho9$1sp74$2@dont-email.me
    DFS uv9hk5$1sp74$1@dont-email.me
    Ahlstrom uv9g45$1s89v$4@dont-email.me

    If an article is missing, or out of order, I might wait awhile . . .
    . . . or I might not, one "Found MessageID" is enough to continue.

    Note also that eternal-september blocks a variety of nyms.
    Using ES, I never see anything from alt.checkmate in cola (which is good).

    Censorship is the price you pay for using EternalSeptember, nigga.
    BlockNews doesn't censor you.

    blocknews allows crossposting from alt.checkmate,
    so their data often won't match with eternal-september.

    Again:

    MessageID (instead of Article Number) "bookmarking" is tricky.
    I list MessageIDs (100 at a time), starting from the highest Article Number,
    until I find one of the 10 Message-ID "bookmarks" I've saved.

    One "Found MessageID" is enough to continue . . . or I wait.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Relf@21:1/5 to All on Fri Apr 12 11:07:58 2024
    Correction: 3pm yesterday, you (DFS) had 7 New, 513 last 90 days.

    How many and which news servers do you subscribe to? Why more than one?

    "usNews.BlockNews.NET" & "News.US.Usenet-News.NET";
    both use the same article numbers, so I think it's resold.
    I have two in case one is down|slow.

    Censorship is the price you pay for using EternalSeptember, nigger.

    Crossposting is the price you pay for using [BlockNews].
    I'm glad ES drops some (all?) of the alt.checkmate crossposts into cola.

    As you wish.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From DFS@21:1/5 to Relf on Fri Apr 12 13:32:36 2024
    On 4/11/2024 6:51 PM, Relf wrote:
    You (DFS) replied ( to me ):

    Did that just start? For years BN has been rock solid and fast,
    but in the past few months it's not working too well (for me).

    Yes, it's new. It took 10+ minutes for my "Jeff-Relf.Me@Apr.11--8.27am.Seattle.2024" post to show up.

    3:16pm, Seattle, BlockNews reported:
    29 Requested posts, got all 29 in 6 Secs.

    CntNew / 30_DayCnt
    7 / 513 DFS

    Is that 513 posts by me in the last 30 days? If so, it should be closer
    to 170.


    Which server(s) do you use to build a bookmark of 10 Msg-IDs in a
    specific order? What's the order?

    Any server, every server; on the fly, willy-nilly.

    How many and which news servers do you subscribe to? Why more than one?

    I have a block acct at blocknews, and the free eternal-september.



    Censorship is the price you pay for using EternalSeptember, nigga.


    Crossposting is the price you pay for using Usenet. I'm glad ES drops
    some (all?) of the alt.checkmate crossposts into cola.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)