我知道有一个API用于抓取ebay,但我需要的只是提交高级搜索。
所以,我做了一个功能,(现在硬编码),但有一件事我无法工作。它将项目标记为新项目。
当在高级搜索表单中将项目标记为New
时检查其表单上的元素,其他两个字段将标记为disabled
,这是我可以看到的唯一更改。
我正在提交如下表单并将内容写入文件,以便我可以打开它以查看结果。
一切正常,我可以打开网页,这是正确的结果,但未选择New
选项。
提交此选择的正确方法是什么?我已经尝试了很多变化而且没有尝试过任何工作。
def submit_advanced_search():
params = {
'_nkw': "",
'_in_kw': 1,
'_ex_kw': "",
'_sacat': 20081,
'LH_Sold': 1,
'_udlo': 20,
'_udhi': 250,
'LH_ItemConditionUsed': {'disabled':'disabled'},
'LH_ItemConditionNS': {'disabled':'disabled'},
'LH_BIN': 1,
'LH_FS': 1,
'LH_Complete': 1,
}
content = requests.get("http://www.ebay.com/sch/i.html", params = params).content
with open("search_result.html", "wb") as f:
f.write(content)
答案 0 :(得分:2)
这对我有用。正确的字段为'LH_ItemCondition': 3
。
所以函数将是:
def submit_advanced_search():
params = {
'_nkw': "",
'_in_kw': 1,
'_ex_kw': "",
'_sacat': 20081,
'LH_Sold': 1,
'_udlo': 20,
'_udhi': 250,
'LH_ItemCondition': 3,
'LH_BIN': 1,
'LH_FS': 1,
'LH_Complete': 1,
}
content = requests.get("http://www.ebay.com/sch/i.html", params = params).content
with open("search_result.html", "wb") as f:
f.write(content)