Re: [Sugar-devel] Some thoughts on GetBooks activity

2024-03-06 Thread Chihurumnaya Ibiam
Thanks for the update.

-- 

Ibiam Chihurumnaya
ib...@sugarlabs.org



On Wed, Mar 6, 2024 at 5:15 PM James Simmons  wrote:

> I tried updating feedparser.py with a later version that still fits in two
> files. It looks like the developers made some attempt to get it working
> with Python 3 but did not finish it. I spent a couple of hours with it and
> it looks like it's working. I can browse OPDS feeds now. That's the good
> news.
>
> The bad news is it looks like the OPDS feeds for Feedbooks don't exist
> anymore and in a month or so Feedbooks itself won't exist. I'm looking into
> alternative feeds.
>
> The Internet Archive feeds work. I'm thinking of getting rid of one. It is
> supposed to list books in alpha order. What it actually does is list out
> letters of the alphabet and there appears to be no way to drill down to see
> books for that letter. Even if you could do that, the lists would be too
> long to be useful.
>
> There are other lists I might add for Internet Archive. For example, there
> is one for Kids books.
>
> Clicking on a book in one of these lists should make it available for
> download. That isn't working now. I'll fix it.
>
> There is a way to list out My Books, which are books in your journal. It
> looks like you can copy books from thumb drives into the Journal too. Looks
> a bit like my Sugar Commander Activity.
>
> In any case, I think I can make this Activity worth having.
>
> James Simmons
>
>
> On Tue, Mar 5, 2024 at 11:20 AM James Simmons  wrote:
>
>> It turns out that feedparser has a version that is new enough to support
>> Python 3 but old enough to fit in two files, one of which replaces sgml.py.
>> I can get rid of the current files instead of trying to make them work with
>> Python 3 myself. I'm going to try this tonight.
>>
>> It also turns out that the Activity does use OPDS for Internet Archive,
>> just not for book searches. It uses it to browse catalogs like most
>> downloaded, newly added, alphabetical by title, etc. So if I got that
>> working we'd have a fancier Get IA Books even if Feedbooks goes away.
>>
>> James Simmons
>>
>> On Tue, Mar 5, 2024 at 10:07 AM Chihurumnaya Ibiam 
>> wrote:
>>
>>> Agreed, activities depending on external APIs are difficult to maintain
>>> and if anyone is willing to do it
>>> then it can work.
>>>
>>> --
>>>
>>> Ibiam Chihurumnaya
>>> ib...@sugarlabs.org
>>>
>>>
>>>
>>> On Tue, Mar 5, 2024 at 6:04 AM James Cameron  wrote:
>>>
 Yes, I remember some of this from when I last maintained those
 activities.

 I felt that activities that depended on external APIs become difficult
 to maintain.  ;-)

 On Mon, Mar 04, 2024 at 01:46:44PM -0600, James Simmons wrote:
 > Back in 2009 I wrote the Get IA Books activity which uses the
 Advanced Search
 > service of the Internet Archive to search their catalog and makes it
 possible
 > to download these books to the Journal and put some metadata in there
 as well.
 >
 > Shortly after I finished this Sayamindu Dasgupta made a similar
 Activity that
 > used OPDS to search book catalogs. Specifically he was interested in
 using OPDS
 > to search [1]https://www.feedbooks.com, which had an OPDS server
 that included
 > public domain books. He also made it possible for the Activity user
 to add an
 > entry for his own OPDS server, but you had to edit a text file using
 the
 > Terminal activity to do it.
 >
 > I have just fixed my own Activity to work with Python 3 and wanted to
 try
 > fixing this one too. I've run into a few problems which makes me
 think this
 > Activity might not be fixable.
 >
 > 1. Feedbooks.com is going out of business very soon. It is possible
 that their
 > OPDS server is already not working: [2]
 https://www.feedbooks.com/catalog/
 > public_domain
 > 2. There are other ODPS servers, but not for public domain titles:
 [3]http://
 > opdshome.uo1.net/
 > 3. The Internet Archive has an OPDS server but this Activity doesn't
 use it.
 > Instead it adapted code from my GetIABooks activity. Apparently the
 IA OPDS
 > server had issues when this was written.
 > 3. The Activity makes use of code from [4]http://feedparser.org/.
 > Unfortunately, the latest version of this cannot be contained in just
 one file.
 > The old version depends on sgmllib.py, which was included with Python
 2 but not
 > with 3. Somebody found the code for this and ran it through a Python
 2 to 3
 > converter. I added this to the project.
 > 4. I managed to convert enough code in feedparser.py and sgmllib.py
 to get the
 > Activity to run without generating diagnostic messages. I have no
 idea if it is
 > actually working.
 >
 > Thoughts?
 >
 > James Simmons
 >
 > References:
 >
 > [1] https://www.feedbooks.com/
 > [2] 

Re: [Sugar-devel] Some thoughts on GetBooks activity

2024-03-06 Thread James Simmons
I tried updating feedparser.py with a later version that still fits in two
files. It looks like the developers made some attempt to get it working
with Python 3 but did not finish it. I spent a couple of hours with it and
it looks like it's working. I can browse OPDS feeds now. That's the good
news.

The bad news is it looks like the OPDS feeds for Feedbooks don't exist
anymore and in a month or so Feedbooks itself won't exist. I'm looking into
alternative feeds.

The Internet Archive feeds work. I'm thinking of getting rid of one. It is
supposed to list books in alpha order. What it actually does is list out
letters of the alphabet and there appears to be no way to drill down to see
books for that letter. Even if you could do that, the lists would be too
long to be useful.

There are other lists I might add for Internet Archive. For example, there
is one for Kids books.

Clicking on a book in one of these lists should make it available for
download. That isn't working now. I'll fix it.

There is a way to list out My Books, which are books in your journal. It
looks like you can copy books from thumb drives into the Journal too. Looks
a bit like my Sugar Commander Activity.

In any case, I think I can make this Activity worth having.

James Simmons


On Tue, Mar 5, 2024 at 11:20 AM James Simmons  wrote:

> It turns out that feedparser has a version that is new enough to support
> Python 3 but old enough to fit in two files, one of which replaces sgml.py.
> I can get rid of the current files instead of trying to make them work with
> Python 3 myself. I'm going to try this tonight.
>
> It also turns out that the Activity does use OPDS for Internet Archive,
> just not for book searches. It uses it to browse catalogs like most
> downloaded, newly added, alphabetical by title, etc. So if I got that
> working we'd have a fancier Get IA Books even if Feedbooks goes away.
>
> James Simmons
>
> On Tue, Mar 5, 2024 at 10:07 AM Chihurumnaya Ibiam 
> wrote:
>
>> Agreed, activities depending on external APIs are difficult to maintain
>> and if anyone is willing to do it
>> then it can work.
>>
>> --
>>
>> Ibiam Chihurumnaya
>> ib...@sugarlabs.org
>>
>>
>>
>> On Tue, Mar 5, 2024 at 6:04 AM James Cameron  wrote:
>>
>>> Yes, I remember some of this from when I last maintained those
>>> activities.
>>>
>>> I felt that activities that depended on external APIs become difficult
>>> to maintain.  ;-)
>>>
>>> On Mon, Mar 04, 2024 at 01:46:44PM -0600, James Simmons wrote:
>>> > Back in 2009 I wrote the Get IA Books activity which uses the Advanced
>>> Search
>>> > service of the Internet Archive to search their catalog and makes it
>>> possible
>>> > to download these books to the Journal and put some metadata in there
>>> as well.
>>> >
>>> > Shortly after I finished this Sayamindu Dasgupta made a similar
>>> Activity that
>>> > used OPDS to search book catalogs. Specifically he was interested in
>>> using OPDS
>>> > to search [1]https://www.feedbooks.com, which had an OPDS server that
>>> included
>>> > public domain books. He also made it possible for the Activity user to
>>> add an
>>> > entry for his own OPDS server, but you had to edit a text file using
>>> the
>>> > Terminal activity to do it.
>>> >
>>> > I have just fixed my own Activity to work with Python 3 and wanted to
>>> try
>>> > fixing this one too. I've run into a few problems which makes me think
>>> this
>>> > Activity might not be fixable.
>>> >
>>> > 1. Feedbooks.com is going out of business very soon. It is possible
>>> that their
>>> > OPDS server is already not working: [2]
>>> https://www.feedbooks.com/catalog/
>>> > public_domain
>>> > 2. There are other ODPS servers, but not for public domain titles:
>>> [3]http://
>>> > opdshome.uo1.net/
>>> > 3. The Internet Archive has an OPDS server but this Activity doesn't
>>> use it.
>>> > Instead it adapted code from my GetIABooks activity. Apparently the IA
>>> OPDS
>>> > server had issues when this was written.
>>> > 3. The Activity makes use of code from [4]http://feedparser.org/.
>>> > Unfortunately, the latest version of this cannot be contained in just
>>> one file.
>>> > The old version depends on sgmllib.py, which was included with Python
>>> 2 but not
>>> > with 3. Somebody found the code for this and ran it through a Python 2
>>> to 3
>>> > converter. I added this to the project.
>>> > 4. I managed to convert enough code in feedparser.py and sgmllib.py to
>>> get the
>>> > Activity to run without generating diagnostic messages. I have no idea
>>> if it is
>>> > actually working.
>>> >
>>> > Thoughts?
>>> >
>>> > James Simmons
>>> >
>>> > References:
>>> >
>>> > [1] https://www.feedbooks.com/
>>> > [2] https://www.feedbooks.com/catalog/public_domain
>>> > [3] http://opdshome.uo1.net/
>>> > [4] http://feedparser.org/
>>>
>>> > ___
>>> > Sugar-devel mailing list
>>> > Sugar-devel@lists.sugarlabs.org
>>> > http://lists.sugarlabs.org/listinfo/sugar-devel
>>>
>>> 

Re: [Sugar-devel] Some thoughts on GetBooks activity

2024-03-05 Thread James Simmons
It turns out that feedparser has a version that is new enough to support
Python 3 but old enough to fit in two files, one of which replaces sgml.py.
I can get rid of the current files instead of trying to make them work with
Python 3 myself. I'm going to try this tonight.

It also turns out that the Activity does use OPDS for Internet Archive,
just not for book searches. It uses it to browse catalogs like most
downloaded, newly added, alphabetical by title, etc. So if I got that
working we'd have a fancier Get IA Books even if Feedbooks goes away.

James Simmons

On Tue, Mar 5, 2024 at 10:07 AM Chihurumnaya Ibiam 
wrote:

> Agreed, activities depending on external APIs are difficult to maintain
> and if anyone is willing to do it
> then it can work.
>
> --
>
> Ibiam Chihurumnaya
> ib...@sugarlabs.org
>
>
>
> On Tue, Mar 5, 2024 at 6:04 AM James Cameron  wrote:
>
>> Yes, I remember some of this from when I last maintained those activities.
>>
>> I felt that activities that depended on external APIs become difficult to
>> maintain.  ;-)
>>
>> On Mon, Mar 04, 2024 at 01:46:44PM -0600, James Simmons wrote:
>> > Back in 2009 I wrote the Get IA Books activity which uses the Advanced
>> Search
>> > service of the Internet Archive to search their catalog and makes it
>> possible
>> > to download these books to the Journal and put some metadata in there
>> as well.
>> >
>> > Shortly after I finished this Sayamindu Dasgupta made a similar
>> Activity that
>> > used OPDS to search book catalogs. Specifically he was interested in
>> using OPDS
>> > to search [1]https://www.feedbooks.com, which had an OPDS server that
>> included
>> > public domain books. He also made it possible for the Activity user to
>> add an
>> > entry for his own OPDS server, but you had to edit a text file using the
>> > Terminal activity to do it.
>> >
>> > I have just fixed my own Activity to work with Python 3 and wanted to
>> try
>> > fixing this one too. I've run into a few problems which makes me think
>> this
>> > Activity might not be fixable.
>> >
>> > 1. Feedbooks.com is going out of business very soon. It is possible
>> that their
>> > OPDS server is already not working: [2]
>> https://www.feedbooks.com/catalog/
>> > public_domain
>> > 2. There are other ODPS servers, but not for public domain titles:
>> [3]http://
>> > opdshome.uo1.net/
>> > 3. The Internet Archive has an OPDS server but this Activity doesn't
>> use it.
>> > Instead it adapted code from my GetIABooks activity. Apparently the IA
>> OPDS
>> > server had issues when this was written.
>> > 3. The Activity makes use of code from [4]http://feedparser.org/.
>> > Unfortunately, the latest version of this cannot be contained in just
>> one file.
>> > The old version depends on sgmllib.py, which was included with Python 2
>> but not
>> > with 3. Somebody found the code for this and ran it through a Python 2
>> to 3
>> > converter. I added this to the project.
>> > 4. I managed to convert enough code in feedparser.py and sgmllib.py to
>> get the
>> > Activity to run without generating diagnostic messages. I have no idea
>> if it is
>> > actually working.
>> >
>> > Thoughts?
>> >
>> > James Simmons
>> >
>> > References:
>> >
>> > [1] https://www.feedbooks.com/
>> > [2] https://www.feedbooks.com/catalog/public_domain
>> > [3] http://opdshome.uo1.net/
>> > [4] http://feedparser.org/
>>
>> > ___
>> > Sugar-devel mailing list
>> > Sugar-devel@lists.sugarlabs.org
>> > http://lists.sugarlabs.org/listinfo/sugar-devel
>>
>> ___
>> Sugar-devel mailing list
>> Sugar-devel@lists.sugarlabs.org
>> http://lists.sugarlabs.org/listinfo/sugar-devel
>>
>
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] Some thoughts on GetBooks activity

2024-03-05 Thread Chihurumnaya Ibiam
Agreed, activities depending on external APIs are difficult to maintain and
if anyone is willing to do it
then it can work.

-- 

Ibiam Chihurumnaya
ib...@sugarlabs.org



On Tue, Mar 5, 2024 at 6:04 AM James Cameron  wrote:

> Yes, I remember some of this from when I last maintained those activities.
>
> I felt that activities that depended on external APIs become difficult to
> maintain.  ;-)
>
> On Mon, Mar 04, 2024 at 01:46:44PM -0600, James Simmons wrote:
> > Back in 2009 I wrote the Get IA Books activity which uses the Advanced
> Search
> > service of the Internet Archive to search their catalog and makes it
> possible
> > to download these books to the Journal and put some metadata in there as
> well.
> >
> > Shortly after I finished this Sayamindu Dasgupta made a similar Activity
> that
> > used OPDS to search book catalogs. Specifically he was interested in
> using OPDS
> > to search [1]https://www.feedbooks.com, which had an OPDS server that
> included
> > public domain books. He also made it possible for the Activity user to
> add an
> > entry for his own OPDS server, but you had to edit a text file using the
> > Terminal activity to do it.
> >
> > I have just fixed my own Activity to work with Python 3 and wanted to try
> > fixing this one too. I've run into a few problems which makes me think
> this
> > Activity might not be fixable.
> >
> > 1. Feedbooks.com is going out of business very soon. It is possible that
> their
> > OPDS server is already not working: [2]
> https://www.feedbooks.com/catalog/
> > public_domain
> > 2. There are other ODPS servers, but not for public domain titles:
> [3]http://
> > opdshome.uo1.net/
> > 3. The Internet Archive has an OPDS server but this Activity doesn't use
> it.
> > Instead it adapted code from my GetIABooks activity. Apparently the IA
> OPDS
> > server had issues when this was written.
> > 3. The Activity makes use of code from [4]http://feedparser.org/.
> > Unfortunately, the latest version of this cannot be contained in just
> one file.
> > The old version depends on sgmllib.py, which was included with Python 2
> but not
> > with 3. Somebody found the code for this and ran it through a Python 2
> to 3
> > converter. I added this to the project.
> > 4. I managed to convert enough code in feedparser.py and sgmllib.py to
> get the
> > Activity to run without generating diagnostic messages. I have no idea
> if it is
> > actually working.
> >
> > Thoughts?
> >
> > James Simmons
> >
> > References:
> >
> > [1] https://www.feedbooks.com/
> > [2] https://www.feedbooks.com/catalog/public_domain
> > [3] http://opdshome.uo1.net/
> > [4] http://feedparser.org/
>
> > ___
> > Sugar-devel mailing list
> > Sugar-devel@lists.sugarlabs.org
> > http://lists.sugarlabs.org/listinfo/sugar-devel
>
> ___
> Sugar-devel mailing list
> Sugar-devel@lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/sugar-devel
>
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] Some thoughts on GetBooks activity

2024-03-04 Thread James Cameron
Yes, I remember some of this from when I last maintained those activities.

I felt that activities that depended on external APIs become difficult to 
maintain.  ;-)

On Mon, Mar 04, 2024 at 01:46:44PM -0600, James Simmons wrote:
> Back in 2009 I wrote the Get IA Books activity which uses the Advanced Search
> service of the Internet Archive to search their catalog and makes it possible
> to download these books to the Journal and put some metadata in there as well.
> 
> Shortly after I finished this Sayamindu Dasgupta made a similar Activity that
> used OPDS to search book catalogs. Specifically he was interested in using 
> OPDS
> to search [1]https://www.feedbooks.com, which had an OPDS server that included
> public domain books. He also made it possible for the Activity user to add an
> entry for his own OPDS server, but you had to edit a text file using the
> Terminal activity to do it.
> 
> I have just fixed my own Activity to work with Python 3 and wanted to try
> fixing this one too. I've run into a few problems which makes me think this
> Activity might not be fixable.
> 
> 1. Feedbooks.com is going out of business very soon. It is possible that their
> OPDS server is already not working: [2]https://www.feedbooks.com/catalog/
> public_domain
> 2. There are other ODPS servers, but not for public domain titles: [3]http://
> opdshome.uo1.net/
> 3. The Internet Archive has an OPDS server but this Activity doesn't use it.
> Instead it adapted code from my GetIABooks activity. Apparently the IA OPDS
> server had issues when this was written.
> 3. The Activity makes use of code from [4]http://feedparser.org/.
> Unfortunately, the latest version of this cannot be contained in just one 
> file.
> The old version depends on sgmllib.py, which was included with Python 2 but 
> not
> with 3. Somebody found the code for this and ran it through a Python 2 to 3
> converter. I added this to the project.
> 4. I managed to convert enough code in feedparser.py and sgmllib.py to get the
> Activity to run without generating diagnostic messages. I have no idea if it 
> is
> actually working.
> 
> Thoughts?
> 
> James Simmons
> 
> References:
> 
> [1] https://www.feedbooks.com/
> [2] https://www.feedbooks.com/catalog/public_domain
> [3] http://opdshome.uo1.net/
> [4] http://feedparser.org/

> ___
> Sugar-devel mailing list
> Sugar-devel@lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/sugar-devel

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel