On any Chromium-based browser, you can use the More Tools > Developer Tools: "Network" tab option to filter the GET requests, preserve the network log as you scroll down the page to get all hits and save the generated HAR file in which you will find segments of data looking like:
{"index":"prod-h-006","service_backend":"metadata","hit_type":"item","fields":{"identifier":"bub_gb_xeg1AAAAMAAJ","title":"Aesthetik des H\u00e4sslichen","subject":["bub_upload"],"creator":["Karl Rosenkranz"],"collection":[],"date":"1853-01-01T00:00:00Z","year":1853,"language":["German"],"mediatype":"texts","licenseurl":"http://creativecommons.org/publicdomain/mark/1.0/","item_size":560152933,"files_count":12,"downloads":162,"week":0,"month":3,"indexflag":["index","nonoindex"],"lending___available_to_borrow":false,"lending___available_to_browse":false,"lending___available_to_waitlist":false,"lending___status":"is_readable","addeddate":"2016-09-05T07:09:18Z","source":"http://books.google.com/books?id=xeg1AAAAMAAJ&hl=&source=gbs_api","publicdate":"2016-09-05T07:09:18Z"},"highlight":null,"_score":[50.49404]}
how do you?:
- extract those text segments ({"index":" ... })
- parse out of §1 the following (pipe separated) fields in that order: identifier|title|creator|collection|year|language|item_size|downloads|addeddate|publicdate|_score
The layout of the source data may be messy and some of their fields may be missing, in which case the field entry should be left blank.