Given that this isn't _exactly_ python code (it's meant to represent a console), remove python highlighting.
This commit is contained in:
parent
7ee870c329
commit
91179a00a9
1 changed files with 15 additions and 15 deletions
30
README.md
30
README.md
|
@ -8,7 +8,7 @@ At its core, PyiCloud connects to iCloud using your username and password, then
|
||||||
|
|
||||||
Authentication is as simple as passing your username and password to the `PyiCloudService` class:
|
Authentication is as simple as passing your username and password to the `PyiCloudService` class:
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> from pyicloud import PyiCloudService
|
>>> from pyicloud import PyiCloudService
|
||||||
>>> api = PyiCloudService('jappleseed@apple.com', 'password')
|
>>> api = PyiCloudService('jappleseed@apple.com', 'password')
|
||||||
```
|
```
|
||||||
|
@ -19,7 +19,7 @@ In the event that the username/password combination is invalid, a `PyiCloudFaile
|
||||||
|
|
||||||
You can list which devices associated with your account by using the `devices` property:
|
You can list which devices associated with your account by using the `devices` property:
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.devices
|
>>> api.devices
|
||||||
{
|
{
|
||||||
u'i9vbKRGIcLYqJnXMd1b257kUWnoyEBcEh6yM+IfmiMLh7BmOpALS+w==': <AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>,
|
u'i9vbKRGIcLYqJnXMd1b257kUWnoyEBcEh6yM+IfmiMLh7BmOpALS+w==': <AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>,
|
||||||
|
@ -29,7 +29,7 @@ u'reGYDh9XwqNWTGIhNBuEwP1ds0F/Lg5t/fxNbI4V939hhXawByErk+HYVNSUzmWV': <AppleDevic
|
||||||
|
|
||||||
and you can access individual devices by either their index, or their ID:
|
and you can access individual devices by either their index, or their ID:
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.devices[0]
|
>>> api.devices[0]
|
||||||
<AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>
|
<AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>
|
||||||
>>> api.devices['i9vbKRGIcLYqJnXMd1b257kUWnoyEBcEh6yM+IfmiMLh7BmOpALS+w==']
|
>>> api.devices['i9vbKRGIcLYqJnXMd1b257kUWnoyEBcEh6yM+IfmiMLh7BmOpALS+w==']
|
||||||
|
@ -38,7 +38,7 @@ and you can access individual devices by either their index, or their ID:
|
||||||
|
|
||||||
or, as a shorthand if you have only one associated apple device, you can simply use the `iphone` property to access the first device associated with your account:
|
or, as a shorthand if you have only one associated apple device, you can simply use the `iphone` property to access the first device associated with your account:
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.iphone
|
>>> api.iphone
|
||||||
<AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>
|
<AppleDevice(iPhone 4S: Johnny Appleseed's iPhone)>
|
||||||
```
|
```
|
||||||
|
@ -53,7 +53,7 @@ Once you have successfully authenticated, you can start querying your data!
|
||||||
|
|
||||||
Returns the device's last known location. The Find My iPhone app must have been installed and initialized.
|
Returns the device's last known location. The Find My iPhone app must have been installed and initialized.
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.iphone.location()
|
>>> api.iphone.location()
|
||||||
{u'timeStamp': 1357753796553, u'locationFinished': True, u'longitude': -0.14189, u'positionType': u'GPS', u'locationType': None, u'latitude': 51.501364, u'isOld': False, u'horizontalAccuracy': 5.0}
|
{u'timeStamp': 1357753796553, u'locationFinished': True, u'longitude': -0.14189, u'positionType': u'GPS', u'locationType': None, u'latitude': 51.501364, u'isOld': False, u'horizontalAccuracy': 5.0}
|
||||||
```
|
```
|
||||||
|
@ -62,7 +62,7 @@ Returns the device's last known location. The Find My iPhone app must have been
|
||||||
|
|
||||||
The Find My iPhone response is quite bloated, so for simplicity's sake this method will return a subset of the properties.
|
The Find My iPhone response is quite bloated, so for simplicity's sake this method will return a subset of the properties.
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.iphone.status()
|
>>> api.iphone.status()
|
||||||
{'deviceDisplayName': u'iPhone 5', 'deviceStatus': u'200', 'batteryLevel': 0.6166913, 'name': u"Peter's iPhone"}
|
{'deviceDisplayName': u'iPhone 5', 'deviceStatus': u'200', 'batteryLevel': 0.6166913, 'name': u"Peter's iPhone"}
|
||||||
```
|
```
|
||||||
|
@ -73,7 +73,7 @@ If you wish to request further properties, you may do so by passing in a list of
|
||||||
|
|
||||||
Sends a request to the device to play a sound, if you wish pass a custom message you can do so by changing the subject arg.
|
Sends a request to the device to play a sound, if you wish pass a custom message you can do so by changing the subject arg.
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.iphone.play_sound()
|
>>> api.iphone.play_sound()
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -83,7 +83,7 @@ A few moments later, the device will play a ringtone, display the default notifi
|
||||||
|
|
||||||
Lost mode is slightly different to the "Play Sound" functionality in that it allows the person who picks up the phone to call a specific phone number *without having to enter the passcode*. Just like "Play Sound" you may pass a custom message which the device will display, if it's not overriden the custom message of "This iPhone has been lost. Please call me." is used.
|
Lost mode is slightly different to the "Play Sound" functionality in that it allows the person who picks up the phone to call a specific phone number *without having to enter the passcode*. Just like "Play Sound" you may pass a custom message which the device will display, if it's not overriden the custom message of "This iPhone has been lost. Please call me." is used.
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> phone_number = '555-373-383'
|
>>> phone_number = '555-373-383'
|
||||||
>>> message = 'Thief! Return my phone immediately.'
|
>>> message = 'Thief! Return my phone immediately.'
|
||||||
>>> api.iphone.lost_device(phone_number, message)
|
>>> api.iphone.lost_device(phone_number, message)
|
||||||
|
@ -97,13 +97,13 @@ The calendar webservice currently only supports fetching events.
|
||||||
|
|
||||||
Returns this month's events:
|
Returns this month's events:
|
||||||
|
|
||||||
```python
|
```
|
||||||
api.calendar.events()
|
api.calendar.events()
|
||||||
```
|
```
|
||||||
|
|
||||||
Or, between a specific date range:
|
Or, between a specific date range:
|
||||||
|
|
||||||
```python
|
```
|
||||||
from_dt = datetime(2012, 1, 1)
|
from_dt = datetime(2012, 1, 1)
|
||||||
to_dt = datetime(2012, 1, 31)
|
to_dt = datetime(2012, 1, 31)
|
||||||
api.calendar.events(from_dt, to_dt)
|
api.calendar.events(from_dt, to_dt)
|
||||||
|
@ -113,7 +113,7 @@ api.calendar.events(from_dt, to_dt)
|
||||||
|
|
||||||
You can access documents stored in your iCloud account by using the `files` property's `dir` method:
|
You can access documents stored in your iCloud account by using the `files` property's `dir` method:
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.files.dir()
|
>>> api.files.dir()
|
||||||
[u'.do-not-delete',
|
[u'.do-not-delete',
|
||||||
u'.localized',
|
u'.localized',
|
||||||
|
@ -127,7 +127,7 @@ You can access documents stored in your iCloud account by using the `files` prop
|
||||||
|
|
||||||
You can access children and their children's children using the filename as an index:
|
You can access children and their children's children using the filename as an index:
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.files['com~apple~Notes']
|
>>> api.files['com~apple~Notes']
|
||||||
<Folder: u'com~apple~Notes'>
|
<Folder: u'com~apple~Notes'>
|
||||||
>>> api.files['com~apple~Notes'].type
|
>>> api.files['com~apple~Notes'].type
|
||||||
|
@ -148,7 +148,7 @@ u'file'
|
||||||
|
|
||||||
And when you have a file that you'd like to download, the `open` method will return a response object from which you can read the `content`.
|
And when you have a file that you'd like to download, the `open` method will return a response object from which you can read the `content`.
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.files['com~apple~Notes']['Documents']['Some Document'].open().content
|
>>> api.files['com~apple~Notes']['Documents']['Some Document'].open().content
|
||||||
'Hello, these are the file contents'
|
'Hello, these are the file contents'
|
||||||
```
|
```
|
||||||
|
@ -157,7 +157,7 @@ Note: the object returned from the above `open` method is a [response object](ht
|
||||||
|
|
||||||
For example, if you know that the file you're opening has JSON content:
|
For example, if you know that the file you're opening has JSON content:
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> api.files['com~apple~Notes']['Documents']['information.json'].open().json()
|
>>> api.files['com~apple~Notes']['Documents']['information.json'].open().json()
|
||||||
{'How much we love you': 'lots'}
|
{'How much we love you': 'lots'}
|
||||||
>>> api.files['com~apple~Notes']['Documents']['information.json'].open().json()['How much we love you']
|
>>> api.files['com~apple~Notes']['Documents']['information.json'].open().json()['How much we love you']
|
||||||
|
@ -166,7 +166,7 @@ For example, if you know that the file you're opening has JSON content:
|
||||||
|
|
||||||
Or, if you're downloading a particularly large file, you may want to use the `stream` keyword argument, and read directly from the raw response object:
|
Or, if you're downloading a particularly large file, you may want to use the `stream` keyword argument, and read directly from the raw response object:
|
||||||
|
|
||||||
```python
|
```
|
||||||
>>> download = api.files['com~apple~Notes']['Documents']['big_file.zip'].open(stream=True)
|
>>> download = api.files['com~apple~Notes']['Documents']['big_file.zip'].open(stream=True)
|
||||||
>>> with open('downloaded_file.zip', 'wb') as opened_file:
|
>>> with open('downloaded_file.zip', 'wb') as opened_file:
|
||||||
opened_file.write(download.raw.read())
|
opened_file.write(download.raw.read())
|
||||||
|
|
Loading…
Reference in a new issue