Commit graph

154 commits

Author SHA1 Message Date
yannickulrich
cb89d678cf PEP8 for base.py 2016-01-18 10:09:59 +01:00
yannickulrich
420c9a783c PEP8 compatibility 2016-01-18 09:38:14 +01:00
yannickulrich
9982477759 Adding Reminder support 2016-01-17 20:27:57 +01:00
Tor Arne Vestbø
5d241fd1b5 Don't set Host header manually
It's taken care of by the requests module, based on the url we're
posting to, so no need to juggle the host header ourselves.
2016-01-13 20:42:14 +01:00
Tor Arne Vestbø
35f7955228 Use same setup/login endpoint as iCloud webapp 2016-01-13 20:42:14 +01:00
Tor Arne Vestbø
2e836b9185 Remove three unused endpoint definitions from PyiCloudService base 2016-01-13 20:42:14 +01:00
Tor Arne Vestbø
603b1d8f57 Normalize HTTP header names to title case
The spec says they are case insensitive, so this is just for
consistency (with eg. Chrome).
2016-01-13 20:42:14 +01:00
Adam Coddington
ce8d570b21 Merge pull request #54 from torarnv/dont-regenerate-client-id
Don't generate clientId twice
2016-01-10 22:21:07 -08:00
Tor Arne Vestbø
733071a0f7 Rework cookie persistence handling
Instead of trying to look for a specific cookie to save, discarding all
others, and persisting the cookies manually using pickle, we build on
the functionality of cookielib, which already has functionality to save
and load cookiejars. The request library is documented to work with any
subclass of cookielib.CookieJar.

This ensures that we only save persistent cookies (which includes the
X-APPLE-WEB-KB cookie), and skip session cookies, which should make the
code more future proof in case Apple adds more persistent cookies.

This also fixes #44, which was still occurring because we were
persisting the cookies of the request, not the session, and when
logging in with a persisted cookie the resulting request did not
have the X-APPLE-WEB-KB set, so we ended up overwriting the cookie
file with one that didn't contain any X-APPLE-WEB-KB cookie anymore.
2016-01-07 21:02:27 +01:00
Tor Arne Vestbø
5e41650d50 Don't generate clientId twice
We already generate and store the client ID in self.client_id, so
no need to re-generate it in refresh_validate().
2016-01-07 20:23:49 +01:00
kevin walchko
649d88316c fixed urllib3 https warning 2015-12-13 20:24:34 -08:00
Craig Leres
a532000d12 Add optional verify parameter to allow verification of SSL certificates
by the requests module.
2015-10-20 14:45:56 -07:00
Adam Coddington
f7f1cba66a Store only cookies having names beginning with X-APPLE-WEB-KB; cache copied request cookies as _cookies rather than mutable reference. 2015-05-24 14:49:59 -07:00
Adam Coddington
3d795fab1b Remove logging configuration. 2015-05-17 23:14:11 -07:00
Adam Coddington
d056c9b708 Updating cookie handling to serialize all cookies following the request. 2015-05-17 23:11:27 -07:00
Adam Coddington
67030b0eba Allow user to specify cookie directory. 2015-05-17 22:48:43 -07:00
Adam Coddington
1a3a2bd616 PEP-8 naming for 'newKBCookie.' 2015-05-13 22:01:05 -07:00
Adam Coddington
0419012e15 Make cookie loading a little more pythonic. 2015-05-13 22:00:47 -07:00
Adam Coddington
4daa34f310 Cleaning up cookie handling to use a system-level temporary directory. Adding logger. 2015-05-13 21:59:44 -07:00
FiZiX
897f905855 Add X-APPLE-WEB-KB cookie handling
Add X-APPLE-WEB-KB cookie handling to prevent e-mail from Apple every time script is run.
2015-05-13 13:01:08 -04:00
Adam Coddington
7f7becb7d8 Changing permissions to something more appropriate. 2015-03-31 22:33:32 -07:00
Adam Coddington
c1f2c924bb Merge pull request #38 from doughyde/master
Fix calling the wrong function
2015-03-25 21:15:42 -07:00
Adam Coddington
76a653664e Moving operator before line break. 2015-03-25 21:14:28 -07:00
Doug Hyde
830f08d6ed Fix calling the wrong function 2015-03-24 23:24:02 -07:00
Adam Coddington
e45984b49c Minor style changes. 2015-01-10 11:21:30 -08:00
Simon Elliston Ball
de51878a83 Enable family mode
refresh locations now includes all devices associated with your family,
not just the main account used.
2015-01-08 19:03:32 +00:00
Adam Coddington
77b17f091c Merge remote-tracking branch 'derphilipp/master' into python3k
Conflicts:
	pyicloud/cmdline.py
2014-10-25 20:34:27 -07:00
Adam Coddington
506d8e5ba3 Moving a docstring. 2014-10-06 06:32:33 -07:00
Adam Coddington
58cbec08f5 Properly send use only arguments following the first. 2014-10-05 21:10:01 -07:00
Adam Coddington
e5e961c6c1 Adding tox configuration; making sanity test Python 2.6 compatible. 2014-10-05 20:59:30 -07:00
Adam Coddington
622f38e4a6 Moving tests into the pyicloud package. 2014-10-05 20:48:00 -07:00
Adam Coddington
9c6e59c26d Adding a single basic test asserting that the help text is properly displayed. 2014-10-05 20:46:07 -07:00
Adam Coddington
434535f6a4 PEP8 compliance. 2014-10-05 20:38:17 -07:00
Adam Coddington
39965ce51a PEP8 compliance (line length). 2014-10-05 20:26:10 -07:00
Philipp Weissmann
c18fcf7221 Fixed python2.6 compatiblity, formating and spelling 2014-10-03 08:31:05 +02:00
Philipp Weissmann
cb5872c1a0 Use pytz instead of /etc/timezone; Python3 compatible 2014-10-02 10:55:33 +02:00
Philipp Weissmann
4f2e92c6e0 Python2 to Python3 conversion using 2to3 2014-10-02 09:52:26 +02:00
Adam Coddington
32bad85c75 Use absolute import for contacts module. Fixes #22. 2014-08-25 23:12:33 -07:00
Mario Mancino
4d4f3c31c7 added Contacts class 2014-08-22 18:42:44 +02:00
Mario Mancino
2623013b48 iCloud Contacts Support, based on pull-request from joachimneu 2014-08-22 18:36:06 +02:00
Benjamin Schollnick
1ca1a84648 Adding the command line wrapper, to allow shell script usage, and other applications to use pyicloud services. 2014-04-17 15:08:12 -07:00
Evgeny Tataurov
48d3432c9c Fix device indexing for python3 2014-01-26 13:25:07 +06:00
Peter Evans
16163f4ccb Adding a method for fetching a single event's details, which provides more information about an event, such as any notes ('description') about it. 2013-12-22 13:45:41 +00:00
Adam Coddington
3d87dac040 PEP-8 style fixes; removing missing imports; fixing ValueError when raising PyiCloudNoDevicesException 2013-10-11 18:34:13 -07:00
Adam Coddington
565146ac3d Encode to utf-8 before hashing. 2013-10-11 18:34:11 -07:00
Adam Coddington
af9f53eca6 Handling __str__ and __unicode__ in a Python2/3-agnostic manner. 2013-10-11 18:33:18 -07:00
Adam Coddington
b3cc67c01f Removing relative imports. 2013-10-11 18:33:18 -07:00
Adam Coddington
47f7c71b1b Should an instance key not be returned, generate a UUID instead. Fixes #9. 2013-10-11 18:10:19 -07:00
Benjamin Schollnick
405a603092 Added Display Message function, and password locking to Lost_Device
Added the ability to send a icloud message (with and without sound),
and password locking to Lost Device.
2013-05-31 10:26:30 -04:00
Adam Coddington
870d9bc7e9 Adding support for downloading files from iCloud's ubiquity service. 2013-05-18 22:35:52 -07:00
Adam Coddington
1d45ad9e7d Adding support for ubiquity (file synchronization/storage) API.
Borrowed many implementation details from @matin's lovely icloud implementation;
thanks @matin!
2013-05-18 21:23:21 -07:00
Adam Coddington
8b5e907896 Adapt existing module architecture to allow for multiple apple devices; adding unicode/string displays; adding attribute and key convenience accessors. 2013-05-18 19:14:27 -07:00
Adam Coddington
ff230c6f42 Removing clientBuildNumber/clientId from request parameters due to originating endpoint no longer existing. 2013-05-18 17:36:33 -07:00
Adam Coddington
804cbf1521 Rearrange package to allow for installability. 2013-05-18 17:20:41 -07:00