Metadata-Version: 2.1
Name: pcpartpicker
Version: 1.0.0
Summary: A fast, simple API for PCPartPicker.com.
Home-page: https://github.com/JonathanVusich/pcpartpicker
Author: Jonathan Vusich
Author-email: jonathanvusich@gmail.com
License: GPL
Keywords: pcpartpicker api webscraper
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Topic :: Utilities
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Description-Content-Type: text/markdown
Requires-Dist: lxml (==4.3.0)
Requires-Dist: aiohttp (==3.5.4)
Requires-Dist: py-moneyed (==0.8.0)

# pcpartpicker

[![Build Status](https://travis-ci.org/JonathanVusich/pcpartpicker.svg?branch=master)](https://travis-ci.org/JonathanVusich/pcpartpicker)
[![Coverage Status](https://coveralls.io/repos/github/JonathanVusich/pcpartpicker/badge.svg?branch=master&kill_cache=1)](https://coveralls.io/github/JonathanVusich/pcpartpicker?branch=master&kill_cache=1)
![](https://img.shields.io/pypi/dm/pcpartpicker.svg)

This is an unofficial Python 3.7+ API for the website pcpartpicker.com.
Written using async code and multiprocessing for efficient data retrieval. 
This package is currently in beta.

## Installation:
```
pip install pcpartpicker
```

## Examples:
Retrieving supported API regions:
```
from pcpartpicker import API

api = API()
print(api.supported_regions)
>>> {'be', 'us', 'it', 'uk', 'ie', 'nz', 'de', 'ca', 'au', 'fr', 'se', 'es', 'in'}
```

Retrieving currently selected region (default is US):
```
from pcpartpicker import API

api = API()
print(api.region)
>>> us
```

Creating an API object with a different default region:
```
from pcpartpicker import API

api = API("de")
print(api.region)
>>> de
```

Changing the default region:
```
from pcpartpicker import API

api = API()
api.set_region("de")
print(api.region)
>>> de
```

Changing the maximum number of allowed concurrent requests:
```
from pcpartpicker import API

api = API()
api.set_concurrent_connections(100)
print(api.concurrent_connections)
>>> 100 
```

Retrieving supported part list:
```
from pcpartpicker import API

api = API()
print(api.supported_parts)
>>> {'wireless-network-card', 'case-fan', 'cpu', 'cpu-cooler', 'headphones', 'motherboard', 'monitor', 'internal-hard-drive', 'external-hard-drive', 'ups', 'fan-controller', 'case', 'keyboard', 'mouse', 'wired-network-card', 'sound-card', 'video-card', 'speakers', 'optical-drive', 'power-supply', 'thermal-paste', 'memory'}
```

Retrieving all part data:
```
from pcpartpicker import API

api = API()
part_data = api.retrieve_all()
``` 

Retrieving specific part data:
```
from pcpartpicker import API

api = API()
cpu_data = api.retrieve("cpu")
```


