私は初めてWebスクレーパーで作業しています。私はBeautiful Soupを使用してJSONファイルを解析し、CSVに送信するいくつかの属性を返します。BeautifulSoupは値が一致する要素を見つけることができますか?
status
変数は、JSON配列に、バイナリ値(0/1)です。ステータスが0の配列だけを返したいと思います。それは実現可能か?
"""soup = BeautifulSoup(html)
table = soup.find()
print soup.prettify()"""
js_data = json.loads(html)
Attraction = []
event = []
status = []
for doc in js_data["response"]["docs"]:
Attraction.append(doc["Attraction"])
event.append(doc["PostProcessedData"]["Onsales"]["event"]["date"])
status.append(doc["PostProcessedData"]["Onsales"]["status"])
with open("out.csv","w") as f:
datas = zip(Attraction,event,status)
keys = ["Attraction","event","status"]
f.write(";".join(keys))
for data in datas:
f.write(",".join([str(k).replace(",",";").replace("<br>"," ") for k in data]))
f.write("\n")
は、あなたがしようとした動作しませんでしたか? –
htmlを追加して取得しようとしているもの、なぜjsonを構文解析するのにbs4を使用していますか? –