5 ms·
Sheetfu – Python library to interact with Google Sheets V4 API
- mushufasa 7y agoalso see stencila https://stenci.la https://stenci.la
- agravier 7y agoLooks like nice stuff but this is not yet something that can be used if one is not part of the closed beta.
- jonas_b 7y agoSeems like re-creating pygsheets, no? https://github.com/nithinmurali/pygsheets https://github.com/nithinmurali/pygsheets
- washadjeffmad 7y agoSimilar in function, different in application? They don't need to call it yapygsheets for it to be their own.
- jeanloolz 7y agoAuthor here: Sheetfu original goal was to port the Google Apps Script API for spreadsheet (made in javascript) to Python, so you'll see a lot of common ground between those 2 libs. You could probably achieve the same with both Pygsheet and Sheetfu, the interface is a bit different. Sheetfu, however, contains the Table module, which completely abstracts the coordinate system for a more ORM-ish syntax.
- proc0 7y agoThese lib names, lmao
- master_yoda_1 7y agoWhy it is trending at no 1? I think I need to stop reading hacker news :(
- packetslave 7y agoGo right ahead
- ma2rten 7y agoIs it possible using this or pygsheets to open a sheet that is editable by link without authorizing your account?
- ShakataGaNai 7y agoNo. The API's require authentication to function.
- 6gvONxR4sf7o 7y agoAnyone tried airtable? It seems like it's designed specifically for this, and looks nice, but the fact that they limit number of rows per table on the free plan is a bit of a WTF.
- wy35 7y agoI think we can cut Airtable a little slack since it's geared towards professionals/businesses instead of average consumers. Kind of like how Slack puts a cap on the number of messages in their free version.
- ShakataGaNai 7y agoI've tinkered with Airtable a bit and it's a solid product. It's a "database" shown in the style of a spreadsheet. With a number of great features, but of course you got to pay for that. The plan limit for free I get. However overall I think they use the records-per-base limit as their major "please don't use us for anything automated" function. You couldn't, say, build a light CRM on anything less than the enterprise version because 50k records (for pro aka $20/user/mo) just wouldn't cut it. For those people who need database type powers for a very very small company - it's really impressive. Anyone larger...probably builds something themselves.
- wy35 7y agoI also messed around with Airtable a bit and I do agree that it's a very polished experience. Interestingly, I've noticed that there's actually a large amount of real estate agents who are sick of Salesforce and are very hyped for Airtable. They're waiting for Airtable to add some essential features Salesforce has before jumping ship.
- cgidriver 7y agois there something like this for gmail? Where I could query emails from Python and act on them?
- slightwinder 7y agoGMail has an IMAP-interface. You can use any imap-capable solution, including pythons own imaplib.
- bonzini 7y agoIMAP cannot operate on a whole thread at a time. Ironically you will hardly notice the difference when operating with the web interface, which is very much thread based, but it can be useful to apply a label to a whole thread if your interaction with GMail happens in Thunderbird or mutt. For example, I have a Google Apps script that adds a label to a whole thread whenever someone CCs me on a bug, so that the entire bug suddenly pops up in the "my bugs" Thunderbird folder, including messages prior to my being added.
- slightwinder 7y agoYes and no. You must fetch the whole thread in a seperate request and handle them specifically. Bit more work, but simple. https://developers.google.com/gmail/imap/imap-extensions#access_to_the_gmail_thread_id_x-gm-thrid https://developers.google.com/gmail/imap/imap-extensions#acc...
- xtreak29 7y agoThis might help : https://automatetheboringstuff.com/2e/chapter18/ https://automatetheboringstuff.com/2e/chapter18/
- tyingq 7y agoThere's a restful Gmail API, and Python bindings. https://developers.google.com/gmail/api/downloads https://developers.google.com/gmail/api/downloads
- airstrike 7y agoFirst impression: get_field_name and set_field_name seem quite verbose when one could simply get / set attributes directly
- orf 7y agoYeah, this could be more pythonic for sure. Setter and getter methods are always a bit iffy in Python, usually their presence in a library doesn’t bode well. They could make some of them work with the same syntax as dictionaries, which would be a good start.
- zbentley 7y ago> usually their presence in a library doesn’t bode well Yuuup. My personal favorite is SendGrid/Twilio's email envelope handling, in which the way you add multiple headers is by .... assigning to an attribute multiple times: mail_object.header = "header 1" mail_object.header = "header 2" mail_object.send() # Sends with headers ["header 1", "header 2"]
- joaodlf 7y agoI have been using https://github.com/burnash/gspread https://github.com/burnash/gspread for a while now, very happy with it. Does Sheetfu do anything better?
- jeanloolz 7y agoAs far as I know, Gspread does not handle data other than cells values. Sheetfu can however, you can get or set notes, and colors for example. Pygsheet also can do that. Sheetfu contains the Table module which gives you the possibility to interact with your sheet as it it was a database table (as close as we can get to ORM-ish approach).