一个用于dubizzle的基于抓取的api。
dubizzle的Python项目详细描述
先决条件
- Requests
- BeautifulSoup
- Python2.6+
快速启动
>> import dubizzle >> results = dubizzle.search(country='uae', city='dubai', section='motors', num_results=100) >> print results >> [ { 'url': 'test', 'image': 'http://...', 'price': 10000, 'date': datetime.datetime(2013, 07, 20, 0, 0, 0), 'features': { 'Color': 'black', 'Doors': 4, 'Kilometers': 35000 }, ... }, ... ]
示例
# Find average price of year 2007 and above Nissan Altimas in Dubai import dubizzle results = dubizzle.search(keyword='altima', country='uae', city='dubai', section='motors', category='cars', make='nissan', min_year=2007, num_results='all') total_price, result_count = 0, len(results) for result in results: total_price += result['price'] print float(total_price) / result_count # Prints 39239.94
# Use the above results to find distribution of post-2007 Altima colors from collections import Counter colors = [result['features']['color'] for result in results] distribution = Counter(colors) print distribution['white'] # Prints 52
# Retrieve a single listing from Dubizzle UAE import dubizzle listing = dubizzle.listing('http://dubai.dubizzle.com/motors/used-cars/nissan/tiida/2013/9/25/easy-installment-new-and-used-cars-0563276-2/', country='uae') print listing
搜索参数
一般
- 国家-string;默认为“阿联酋”
- 关键字-字符串
- 城市-字符串
- 节-字符串
- 最低价格和最高价格-整数
- 类别-字符串
- 添加天数-选项有0、3、7、14、30、90或180
- num_results-integer;'all'获取所有可用的结果
- detailed(未实现)-如果设置为true,则为每个结果获取完整的列表数据;速度较慢,显然
电机
- 制作-可以在regions.py中找到一个长列表
- 最小年份和最大年份-整数
- 最小公里数和最大公里数-整数
- 卖家-“经销商”或“所有者”
- 燃油-“汽油”、“混合动力”、“柴油”或“电动”
- 气缸
-3、4、5、6、8、10或12 - 变速器-“自动”或“手动”
列出参数
- url-字符串,必需
- 国家-string;默认为“阿联酋”
问题
请使用Issues页。