python - EBAY 查找 API 日期过滤
问题描述
我正在尝试使用 ebay API 返回给定类别中已完成项目的列表。我的代码似乎正在运行,但结果似乎非常有限(大约 100 个)。我假设 api 可以追溯到多远会有一些限制,但即使是几天也应该返回这个类别的数千个结果。我是否遗漏了代码中的某些内容,或者这只是 ebay API 的限制?我确实确保我使用的是生产而不是沙箱。
所以我现在已经意识到我的查询有多个页面,最多 100 项/100 页。我现在遇到了日期过滤的问题。我在现场看到了过滤器参考资料,但我仍然没有得到我期望的结果。在更新的查询中,我试图只提取昨天完成的项目,但在运行时我从今天开始获取东西。有没有更好的方法来输入日期过滤器?
from ebaysdk.finding import Connection as finding
from bs4 import BeautifulSoup
import os
import csv
api = finding(appid=<my appid>,config_file=None)
response = api.execute(
'findCompletedItems', {
'categoryId': '214',
'keywords' : 'prizm',
'endTimeFrom' : '2020-02-03T00:00:00.000Z',
'endTimeTo' : '2020-02-04T00:00:00.000Z' ,
'paginationInput': {
'entriesPerPage': '100',
'pageNumber': '1'
},
'sortOrder': 'EndTimeSoonest'
}
)
soup = BeautifulSoup(response.content , 'lxml')
totalitems = int(soup.find('totalentries').text)
items = soup.find_all('item')
for item in response.reply.searchResult.item:
print(item.itemId)
print(item.listingInfo.endTime)
解决方案
我终于想通了。我需要为项目过滤器添加额外的代码。工作代码如下。
from ebaysdk.finding import Connection as find from bs4 import BeautifulSoup import os import csv
api = finding(appid=<my appid>,config_file=None)
response = api.execute(
'findCompletedItems', {
'categoryId': '214',
'keywords' : 'prizm',
'itemFilter': [
{'name': 'EndTimeFrom', 'value': '2020-02-03T00:00:00.000Z'},
{'name': 'EndTimeTo', 'value': '2020-02-04T00:00:00.000Z'}
#{'name': 'MinPrice', 'value': '200', 'paramName': 'Currency', 'paramValue': 'GBP'},
#{'name': 'MaxPrice', 'value': '400', 'paramName': 'Currency', 'paramValue': 'GBP'}
],
'paginationInput': {
'entriesPerPage': '100',
'pageNumber': '100'
},
'sortOrder': 'EndTimeSoonest'
}
)
soup = BeautifulSoup(response.content , 'lxml')
totalitems = int(soup.find('totalentries').text)
items = soup.find_all('item')
for item in response.reply.searchResult.item:
print(item.itemId)
print(item.listingInfo.endTime)
推荐阅读
- user-interface - 编辑 UI 机器人框架
- cmake - 如何在 CMake 中使用 cpplint 代码样式检查?
- javascript - 等待 .then() 语句
- firebase - 来自带有 Facebook Auth 和 React Native 的 Firebase 的“回调 URL 不包含状态”错误
- jquery - Jquery Waypoints 未检测到视口
- java - 增加使用 Maven 构建时报告的 Javadoc 错误和警告的数量
- python-3.x - Beautifulsoup 用于循环和获取文本和 Href
- android - Android Studio 中的 xml 错误
- google-sheets - Google 表格:使用 QUERY 选择组内的前 N 个案例
- python - 'ManagementForm 数据丢失或被篡改'