K
I understand the question id? You can look differently.I'd be looking through the sss. So we'll find all the stories with the class. itemwho have an attribute id and who have a parent strategy class itemHolder:items = soup.select(".itemHolder > .item[id]")
To get it. id:print([el['id'] for el in items])
UPD.The items are filled in when the javscript of the code on the website, so bs4 I couldn't get it.We can use it. selenium or his equivalent javаscript- moving, but you can do it without them, but you're gonna need to get the website code on the client's side.Looking at ajax site requests at the Brouser inspector's deposit, the Network saw a request: https://steamcommunity.com/inventory/76561198881890346/440/2?l=russian&count=75 ♪ My assumptions are:76561198881890346 - it's a profile.440 -id annexes2 - something. contextidI don't know where this might be from.Upon request, such JSON shall reply:{
"assets": [
{
"appid": 440,
"contextid": "2",
"assetid": "9980235616",
"classid": "331369",
"instanceid": "3673300869",
"amount": "1"
},
{
"appid": 440,
"contextid": "2",
"assetid": "9980256674",
"classid": "4724536",
"instanceid": "11040580",
"amount": "1"
}
],
"descriptions": [
{
"appid": 440,
"classid": "331369",
"instanceid": "3673300869",
"currency": 0,
"background_color": "3C352E",
"icon_url": "fWFc82js0fmoRAP-qOIPu5THSWqfSmTELLqcUywGkijVjZULUrsm1j-9xgECaDgTXB_lvQdBmsfoF_ezBOESnN975sgC32I_xFV-MrvnMjNic1GUUKEND_Bu9l-4CHYz7sM7BY7j87gDfxKv6tWeoo5XMA",
"icon_url_large": "fWFc82js0fmoRAP-qOIPu5THSWqfSmTELLqcUywGkijVjZULUrsm1j-9xgECaDgTXB_lvQdBmsfoF_ezBOESnN975sgC32I_xFV-MrvnMjNic1GUUKEND_Bu9l-4CHYz7sM7BY7j87gDfxKv6tWeoo5XMA",
"descriptions": [
{
"value": "Дата найма: Thursday, December 5, 2019 (21:34:56) по Гринвичу"
},
{
"value": "Хоть ты и опоздал на вечеринку, все равно именно ты был душой компании."
},
{
"value": " "
},
{
"value": "(Нельзя обменять или продать)"
}
],
"tradable": 0,
"actions": [
{
"link": "http://wiki.teamfortress.com/scripts/itemredirect.php?id=166&lang=ru_RU",
"name": "Статья в вики"
},
{
"link": "steam://rungame/440/76561202255233023/+tf_econ_item_preview%20S%owner_steamid%A%assetid%D11838274993395608916",
"name": "Осмотреть в игре"
}
],
"name": "Наёмник ",
"name_color": "7D6D00",
"type": "Значок 5-го уровня",
"market_name": "Наёмник ",
"market_hash_name": "Mercenary",
"market_actions": [
{
"link": "steam://rungame/440/76561202255233023/+tf_econ_item_preview%20M%listingid%A%assetid%D11838274993395608916",
"name": "Осмотреть в игре"
}
],
"commodity": 0,
"market_tradable_restriction": 7,
"market_marketable_restriction": 0,
"marketable": 0,
"tags": [
{
"category": "Quality",
"internal_name": "Unique",
"localized_category_name": "Качество",
"localized_tag_name": "уникальный",
"color": "7D6D00"
},
{
"category": "Type",
"internal_name": "misc",
"localized_category_name": "Тип",
"localized_tag_name": "Аксессуар"
},
{
"category": "Class",
"internal_name": "Scout",
"localized_category_name": "Класс",
"localized_tag_name": "Scout"
},
{
"category": "Class",
"internal_name": "Sniper",
"localized_category_name": "Класс",
"localized_tag_name": "Sniper"
},
{
"category": "Class",
"internal_name": "Soldier",
"localized_category_name": "Класс",
"localized_tag_name": "Soldier"
},
{
"category": "Class",
"internal_name": "Demoman",
"localized_category_name": "Класс",
"localized_tag_name": "Demoman"
},
{
"category": "Class",
"internal_name": "Medic",
"localized_category_name": "Класс",
"localized_tag_name": "Medic"
},
{
"category": "Class",
"internal_name": "Heavy",
"localized_category_name": "Класс",
"localized_tag_name": "Heavy"
},
{
"category": "Class",
"internal_name": "Pyro",
"localized_category_name": "Класс",
"localized_tag_name": "Pyro"
},
{
"category": "Class",
"internal_name": "Spy",
"localized_category_name": "Класс",
"localized_tag_name": "Spy"
},
{
"category": "Class",
"internal_name": "Engineer",
"localized_category_name": "Класс",
"localized_tag_name": "Engineer"
}
]
},
{
"appid": 440,
"classid": "4724536",
"instanceid": "11040580",
"currency": 0,
"background_color": "3C352E",
"icon_url": "fWFc82js0fmoRAP-qOIPu5THSWqfSmTELLqcUywGkijVjZULUrsm1j-9xgEKYAsuUBrstjtCmPfqDOCLDa5SmI1mtZMC2zRqwlIvbOHnZ2UwJFfGBfkGCvdop1DoWXdq68UzUYe3uasILr2NNqzy",
"icon_url_large": "fWFc82js0fmoRAP-qOIPu5THSWqfSmTELLqcUywGkijVjZULUrsm1j-9xgEKYAsuUBrstjtCmPfqDOCLDa5SmI1mtZMC2zRqwlIvbOHnZ2UwJFfGBfkGCvdop1DoWXdq68UzUYe3uasILr2NNqzy",
"descriptions": [
{
"value": ""
},
{
"value": " "
},
{
"value": "(Нельзя обменять, продать или перековать)"
}
],
"tradable": 0,
"actions": [
{
"link": "http://wiki.teamfortress.com/scripts/itemredirect.php?id=261&lang=ru_RU",
"name": "Статья в вики"
},
{
"link": "steam://rungame/440/76561202255233023/+tf_econ_item_preview%20S%owner_steamid%A%assetid%D13892627020785158121",
"name": "Осмотреть в игре"
}
],
"name": "Кепка Манн Ко ",
"name_color": "7D6D00",
"type": "Головной убор 10-го уровня",
"market_name": "Кепка Манн Ко ",
"market_hash_name": "Mann Co. Cap",
"market_actions": [
{
"link": "steam://rungame/440/76561202255233023/+tf_econ_item_preview%20M%listingid%A%assetid%D13892627020785158121",
"name": "Осмотреть в игре"
}
],
"commodity": 0,
"market_tradable_restriction": 7,
"market_marketable_restriction": 0,
"marketable": 0,
"tags": [
{
"category": "Quality",
"internal_name": "Unique",
"localized_category_name": "Качество",
"localized_tag_name": "уникальный",
"color": "7D6D00"
},
{
"category": "Type",
"internal_name": "misc",
"localized_category_name": "Тип",
"localized_tag_name": "Аксессуар"
},
{
"category": "Class",
"internal_name": "Scout",
"localized_category_name": "Класс",
"localized_tag_name": "Scout"
},
{
"category": "Class",
"internal_name": "Sniper",
"localized_category_name": "Класс",
"localized_tag_name": "Sniper"
},
{
"category": "Class",
"internal_name": "Soldier",
"localized_category_name": "Класс",
"localized_tag_name": "Soldier"
},
{
"category": "Class",
"internal_name": "Demoman",
"localized_category_name": "Класс",
"localized_tag_name": "Demoman"
},
{
"category": "Class",
"internal_name": "Medic",
"localized_category_name": "Класс",
"localized_tag_name": "Medic"
},
{
"category": "Class",
"internal_name": "Heavy",
"localized_category_name": "Класс",
"localized_tag_name": "Heavy"
},
{
"category": "Class",
"internal_name": "Pyro",
"localized_category_name": "Класс",
"localized_tag_name": "Pyro"
},
{
"category": "Class",
"internal_name": "Spy",
"localized_category_name": "Класс",
"localized_tag_name": "Spy"
},
{
"category": "Class",
"internal_name": "Engineer",
"localized_category_name": "Класс",
"localized_tag_name": "Engineer"
}
]
}
],
"total_inventory_count": 2,
"success": 1,
"rwgrsn": -2
}
Then to get things. https://github.com/gil9red/SimplePyScripts/blob/4c8106bf16baa9e4a2ff0859155d26d67d4de227/html_parsing/steamcommunity_com__inventory.py#L10 :import requests
url = 'https://steamcommunity.com/inventory/76561198881890346/440/2?l=russian&count=75'
rs = requests.get(url)
data = rs.json()
assets = data['assets']
id_by_item = {
item['instanceid']: item
for item in data['descriptions']
}
for asset in assets:
app_id = asset['appid']
context_id = asset['contextid']
asset_id = asset['assetid']
instance_id = asset['instanceid']
item_name = id_by_item[instance_id]['name'].strip()
print(f'ID: {app_id}_{context_id}_{asset_id}. Name: {item_name}')
Result:ID: 440_2_9980235616. Name: Наёмник
ID: 440_2_9980256674. Name: Кепка Манн Ко