BeautifulSoup problem

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
overload
User
Beiträge: 13
Registriert: Dienstag 6. April 2021, 13:41

Hallo zusammen,

ich wollte gerne diese Seite hier auslesen: https://restocks.net/de/account/listing ... =1&search=

Nun bekomme ich als output diesen Text von der Seite geliefert. Wenn ihr auf den link klickt sollte nur das login Fenster erscheinen, da man einen account braucht mit seinen hochgeladenen Produkten um diese individuell Information zu sehen.

Code: Alles auswählen

{"products":"<table class=\"listings\" width=\"100%\">\n            <thead>\n                <tr>\n                    <th width=\"100\"><\/th>\n                    <th>Artikel<\/th>\n                    <th>Preis<\/th>\n                    <th width=\"100\">Status<\/th>\n                    <th width=\"60\"><\/th>\n                <\/tr>\n            <\/thead>\n            <tbody>\n    \n            <tr class=\"clickable\" data-price=\"150\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/BQ6472-202\/air-jordan-1-mid-canyon-rust-w-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889678\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11538\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"24\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"150\"\/>\n\n            <span>Air Jordan 1 Mid &#039;Canyon Rust&#039; (W)<\/span>\n            <br\/>\n            EU: 44 \u00bd\n            <br\/>\n            ID: 889678\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">150 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"216\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CZ9084-001\/nike-air-force-1-low-stussy-black-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889679\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11404\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"24\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"216\"\/>\n\n            <span>Nike Air Force 1 Low Stussy Black<\/span>\n            <br\/>\n            EU: 44 \u00bd\n            <br\/>\n            ID: 889679\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">216 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"330\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/DJ0675-200\/air-jordan-4-retro-shimmer-w-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889680\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"12733\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"48\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"330\"\/>\n\n            <span>Air Jordan 4 Shimmer (W)<\/span>\n            <br\/>\n            EU: 38 \u00bd\n            <br\/>\n            ID: 889680\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">330 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"220\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CU1727-800\/nike-dunk-low-sp-university-orange-marine-2020-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889681\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"10765\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"23\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"220\"\/>\n\n            <span>Nike Dunk Low SP Champ Colors University Orange Marine (2020)<\/span>\n            <br\/>\n            EU: 42 \u00bd\n            <br\/>\n            ID: 889681\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">220 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"200\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CZ9084-001\/nike-air-force-1-low-stussy-black-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889682\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11404\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"48\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"200\"\/>\n\n            <span>Nike Air Force 1 Low Stussy Black<\/span>\n            <br\/>\n            EU: 38 \u00bd\n            <br\/>\n            ID: 889682\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">200 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"388\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/NDLOWL22\/nike-dunk-low-off-white-lot-22-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889683\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"12680\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"24\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"388\"\/>\n\n            <span>Nike Dunk Low Off-White Lot 22<\/span>\n            <br\/>\n            EU: 44 \u00bd\n            <br\/>\n            ID: 889683\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">388 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"180\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/553558-144\/air-jordan-1-low-unc-2021-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889684\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"12569\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"9\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"180\"\/>\n\n            <span>Air Jordan 1 Low UNC (2021)<\/span>\n            <br\/>\n            EU: 44\n            <br\/>\n            ID: 889684\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">180 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"330\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/FX9017\/adidas-yeezy-boost-350-v2-tail-light-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889685\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"10310\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"11\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"330\"\/>\n\n            <span>Yeezy Boost 350 V2 Tail Light<\/span>\n            <br\/>\n            EU: 46\n            <br\/>\n            ID: 889685\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">330 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"171\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CZ0775-801\/air-jordan-1-low-og-shattered-backboard-w-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"876868\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"12748\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"1\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"171\"\/>\n\n            <span>Air Jordan 1 Low OG Starfish (W)<\/span>\n            <br\/>\n            EU: 36\n            <br\/>\n            ID: 876868\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">171 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            03\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"125\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/554725-170\/air-jordan-1-mid-white-university-gold-gs-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"876840\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11601\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"48\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"125\"\/>\n\n            <span>Air Jordan 1 Mid University Gold (GS)<\/span>\n            <br\/>\n            EU: 38 \u00bd\n            <br\/>\n            ID: 876840\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">125 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            03\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"221\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CD0461-001\/air-jordan-1-retro-high-silver-toe-w-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"840962\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11515\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"7\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"221\"\/>\n\n            <span>Air Jordan 1 Retro High &#039;Silver Toe&#039; (W)<\/span>\n            <br\/>\n            EU: 42\n            <br\/>\n            ID: 840962\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">221 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            22\/09\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"187\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/DB2179-101\/nike-dunk-high-vast-grey-gs-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"830948\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11607\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"13\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"187\"\/>\n\n            <span>Nike Dunk High Vast Grey (GS)<\/span>\n            <br\/>\n            EU: 36 \u00bd\n            <br\/>\n            ID: 830948\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">187 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            17\/09\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n    \n                <\/tbody>\n        <\/table>\n    \n","pagination":"<div class=\"margin-top-1-5em\">\n    \n    <div class=\"pagination__navigation\">\n        1 - 12 von 12\n    <\/div>\n<\/div>"}
Ich benötige die Information "productid" -> value=889678. Ich benötige alle dieser Values wie kann ich da vorgehen? Mit beautifulsoup komme ich hier leider nicht weiter, da dass ganze ja als Text von der Seite angegeben wurde.

Die Daten stehen auch normalerweise unter folgendem Link bereit: https://restocks.net/de/account/listings
Hier ist die Seite dann in 2 Tabs aufgebaut, einmal der Reiter "Consign" und einmal der Reiter "Resale". Wenn ich auf Resale klicke und in Chrome mit der Konsole das ganze durchsuche finde ich auch diese Daten unter folgendem html:

Code: Alles auswählen

<div class="container">
<div id="tabbed__page">
<div class="tile" id="animated__tabs__menu">
<ul class="nav nav-tabs nav-justified" role="tablist">
<div class="slider" style="left: 459.5px; width: 459.5px;"></div>
<li class="nav-item">
<a class="nav-link" id="consignment-tab" data-toggle="tab" href="#consignment" role="tab" aria-controls="consignment" aria-selected="false" data-tab="consignment">
Consign
</a>
</li>
<li class="nav-item">
<a class="nav-link active" id="resale-tab" data-toggle="tab" href="#resale" role="tab" aria-controls="resale" aria-selected="true" data-tab="resale">
Resale
</a>
</li>
</ul>
</div>
<div class="search__field c-field has-icon-right">
<label class="sticky">
<input id="search" class="c-input" name="search" placeholder="Suchen..." type="text" value="" required="">
</label>
<svg class="svg-inline--fa fa-search fa-w-16 search__icon" aria-hidden="true" focusable="false" data-prefix="fa" data-icon="search" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z"></path></svg><!-- <i class="fa fa-search search__icon"></i> -->
</div>
<div class="listings__table"><table class="listings" width="100%">
            <thead>
                <tr>
                    <th width="100"></th>
                    <th>Artikel</th>
                    <th>Preis</th>
                    <th width="100">Status</th>
                    <th width="60"></th>
                </tr>
            </thead>
            <tbody>
    
            <tr class="clickable" data-price="150">
        <td>
            <img width="80" src="https://images.restocks.net/products/BQ6472-202/air-jordan-1-mid-canyon-rust-w-1-80.png">
        </td>
        <td>
            <input class="productid" type="hidden" value="889678">
            <input class="baseproductid" type="hidden" value="11538">
            <input class="sizeid" type="hidden" value="24">
            <input class="price" type="hidden" value="150">

            <span>Air Jordan 1 Mid 'Canyon Rust' (W)</span>
            <br>
            EU: 44 ½
            <br>
            ID: 889678
        </td>
        <td>
            <span class="storeprice green">
                <span class="storeprice__value">150 €</span>
            </span>
        </td>
        <td>
            Expire:
            08/10/21
        </td>
        <td>
            <svg class="svg-inline--fa fa-pencil-alt fa-w-16 listing__edit__icon" aria-hidden="true" focusable="false" data-prefix="fas" data-icon="pencil-alt" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M497.9 142.1l-46.1 46.1c-4.7 4.7-12.3 4.7-17 0l-111-111c-4.7-4.7-4.7-12.3 0-17l46.1-46.1c18.7-18.7 49.1-18.7 67.9 0l60.1 60.1c18.8 18.7 18.8 49.1 0 67.9zM284.2 99.8L21.6 362.4.4 483.9c-2.9 16.4 11.4 30.6 27.8 27.8l121.5-21.3 262.6-262.6c4.7-4.7 4.7-12.3 0-17l-111-111c-4.8-4.7-12.4-4.7-17.1 0zM124.1 339.9c-5.5-5.5-5.5-14.3 0-19.8l154-154c5.5-5.5 14.3-5.5 19.8 0s5.5 14.3 0 19.8l-154 154c-5.5 5.5-14.3 5.5-19.8 0zM88 424h48v36.3l-64.5 11.3-31.1-31.1L51.7 376H88v48z"></path></svg><!-- <i class="fas fa-pencil-alt listing__edit__icon"></i> -->
        </td>
    </tr>
            <tr class="clickable" data-price="216">
        <td>
            <img width="80" src="https://images.restocks.net/products/CZ9084-001/nike-air-force-1-low-stussy-black-1-80.png">
        </td>
        <td>
            <input class="productid" type="hidden" value="889679">
            <input class="baseproductid" type="hidden" value="11404">
            <input class="sizeid" type="hidden" value="24">
            <input class="price" type="hidden" value="216">

            <span>Nike Air Force 1 Low Stussy Black</span>
            <br>
            EU: 44 ½
            <br>
            ID: 889679
        </td>
        <td>
            <span class="storeprice green">
                <span class="storeprice__value">216 €</span>
            </span>
        </td>
        <td>
            Expire:
            08/10/21
        </td>
        <td>
        
        .
        
        .
        
        ... und noch mehr code

Allerdings, wenn ich die Seite nach erfolgreichem Login durchsuche mit folgendem Code:

Code: Alles auswählen

email = []
password = []
webhook = []
with open("login_data.csv", "r") as csv_logindata:
    csv_logindata_reader = csv.reader(csv_logindata)

    next(csv_logindata_reader)

    for line in csv_logindata_reader:
        email.append(line[0])
        password.append(line[1])
        

proxies = {"https": None, "http": None}
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36"}
email = ''.join(email)

with scraper as s:
#Login session starten
    url = "https://restocks.net/de/login"
    r = s.get(url, headers=headers, proxies=proxies, timeout=10)
    soup = BeautifulSoup(r.content, "html5lib")
    token = soup.find("input", attrs={"name": "_token"})["value"]
    #print(token)
    login_data = {
        "_token": token,
        "email": email,
        "password": password}

    r = s.post("https://restocks.net/de/login", data=login_data, headers=headers, proxies=proxies, timeout=10)
    soup = BeautifulSoup(r.content, "html5lib")
    
    if str(email) in str(soup):
        print(colored("Succesfully logged in", "green"))
    else: 
        print(colored("Unvalid login data", "red"))

    r = s.get("https://restocks.net/de/account/listings", headers=headers, proxies=proxies, timeout=10)    
    soup = BeautifulSoup(r.content, "html.parser")
    test = soup.get_text
    print(test)
bekomme ich den oberen Teil nicht in der Konsole angezeigt. Mir wird kein Produkt angezeigt, dass ich inseriert habe. Ich vermute es liegt daran, da der Tab ja erst ausgewählt wird. In der Network Funktion von chrome sehe ich auch, dass sobald ich auf Resale gehe ein get request an die URL: "https://restocks.net/de/account/listing ... =1&search=" erfolgt und er diese Daten umwandelt.

Hat jemand eine Idee wie ich am einfachste an die productid values herankomme?
rogerb
User
Beiträge: 878
Registriert: Dienstag 26. November 2019, 23:24

@overload,
Mit beautifulsoup komme ich hier leider nicht weiter, da dass ganze ja als Text von der Seite angegeben wurde.
Ich verstehe nicht wo das Problem liegt. BeautifulSoup ist doch dazu da, HTML (also hier HTML ähnlichen Text) zu parsen:

Code: Alles auswählen

from bs4 import BeautifulSoup

data = '{"products":"<table class=\"listings\" width=\"100%\">\n            <thead>\n                <tr>\n                    <th width=\"100\"><\/th>\n                    <th>Artikel<\/th>\n                    <th>Preis<\/th>\n                    <th width=\"100\">Status<\/th>\n                    <th width=\"60\"><\/th>\n                <\/tr>\n            <\/thead>\n            <tbody>\n    \n            <tr class=\"clickable\" data-price=\"150\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/BQ6472-202\/air-jordan-1-mid-canyon-rust-w-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889678\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11538\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"24\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"150\"\/>\n\n            <span>Air Jordan 1 Mid &#039;Canyon Rust&#039; (W)<\/span>\n            <br\/>\n            EU: 44 \u00bd\n            <br\/>\n            ID: 889678\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">150 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"216\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CZ9084-001\/nike-air-force-1-low-stussy-black-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889679\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11404\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"24\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"216\"\/>\n\n            <span>Nike Air Force 1 Low Stussy Black<\/span>\n            <br\/>\n            EU: 44 \u00bd\n            <br\/>\n            ID: 889679\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">216 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"330\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/DJ0675-200\/air-jordan-4-retro-shimmer-w-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889680\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"12733\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"48\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"330\"\/>\n\n            <span>Air Jordan 4 Shimmer (W)<\/span>\n            <br\/>\n            EU: 38 \u00bd\n            <br\/>\n            ID: 889680\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">330 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"220\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CU1727-800\/nike-dunk-low-sp-university-orange-marine-2020-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889681\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"10765\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"23\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"220\"\/>\n\n            <span>Nike Dunk Low SP Champ Colors University Orange Marine (2020)<\/span>\n            <br\/>\n            EU: 42 \u00bd\n            <br\/>\n            ID: 889681\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">220 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"200\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CZ9084-001\/nike-air-force-1-low-stussy-black-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889682\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11404\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"48\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"200\"\/>\n\n            <span>Nike Air Force 1 Low Stussy Black<\/span>\n            <br\/>\n            EU: 38 \u00bd\n            <br\/>\n            ID: 889682\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">200 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"388\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/NDLOWL22\/nike-dunk-low-off-white-lot-22-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889683\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"12680\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"24\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"388\"\/>\n\n            <span>Nike Dunk Low Off-White Lot 22<\/span>\n            <br\/>\n            EU: 44 \u00bd\n            <br\/>\n            ID: 889683\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">388 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"180\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/553558-144\/air-jordan-1-low-unc-2021-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889684\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"12569\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"9\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"180\"\/>\n\n            <span>Air Jordan 1 Low UNC (2021)<\/span>\n            <br\/>\n            EU: 44\n            <br\/>\n            ID: 889684\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">180 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"330\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/FX9017\/adidas-yeezy-boost-350-v2-tail-light-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"889685\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"10310\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"11\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"330\"\/>\n\n            <span>Yeezy Boost 350 V2 Tail Light<\/span>\n            <br\/>\n            EU: 46\n            <br\/>\n            ID: 889685\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">330 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            08\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"171\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CZ0775-801\/air-jordan-1-low-og-shattered-backboard-w-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"876868\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"12748\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"1\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"171\"\/>\n\n            <span>Air Jordan 1 Low OG Starfish (W)<\/span>\n            <br\/>\n            EU: 36\n            <br\/>\n            ID: 876868\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">171 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            03\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"125\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/554725-170\/air-jordan-1-mid-white-university-gold-gs-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"876840\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11601\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"48\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"125\"\/>\n\n            <span>Air Jordan 1 Mid University Gold (GS)<\/span>\n            <br\/>\n            EU: 38 \u00bd\n            <br\/>\n            ID: 876840\n        <\/td>\n        <td>\n            <span class=\"storeprice red\">\n                <span class=\"storeprice__value\">125 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            03\/10\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"221\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/CD0461-001\/air-jordan-1-retro-high-silver-toe-w-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"840962\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11515\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"7\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"221\"\/>\n\n            <span>Air Jordan 1 Retro High &#039;Silver Toe&#039; (W)<\/span>\n            <br\/>\n            EU: 42\n            <br\/>\n            ID: 840962\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">221 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            22\/09\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n            <tr class=\"clickable\" data-price=\"187\">\n        <td>\n            <img width=\"80\" src=\"https:\/\/images.restocks.net\/products\/DB2179-101\/nike-dunk-high-vast-grey-gs-1-80.png\"\/>\n        <\/td>\n        <td>\n            <input class=\"productid\" type=\"hidden\" value=\"830948\"\/>\n            <input class=\"baseproductid\" type=\"hidden\" value=\"11607\"\/>\n            <input class=\"sizeid\" type=\"hidden\" value=\"13\"\/>\n            <input class=\"price\" type=\"hidden\" value=\"187\"\/>\n\n            <span>Nike Dunk High Vast Grey (GS)<\/span>\n            <br\/>\n            EU: 36 \u00bd\n            <br\/>\n            ID: 830948\n        <\/td>\n        <td>\n            <span class=\"storeprice green\">\n                <span class=\"storeprice__value\">187 \u20ac<\/span>\n            <\/span>\n        <\/td>\n        <td>\n            Expire:\n            17\/09\/21\n        <\/td>\n        <td>\n            <i class=\"fas fa-pencil-alt listing__edit__icon\"><\/i><\/span>\n        <\/td>\n    <\/tr>\n    \n                <\/tbody>\n        <\/table>\n    \n","pagination":"<div class=\"margin-top-1-5em\">\n    \n    <div class=\"pagination__navigation\">\n        1 - 12 von 12\n    <\/div>\n<\/div>"}'

soup = BeautifulSoup(data, "html.parser")
tags = soup.find_all("input", {"class": "productid"})
for tag in tags:
    print(f"productid: {tag.attrs['value']}")

"""
Ausgabe:
productid: 889678
productid: 889679
productid: 889680
productid: 889681
productid: 889682
productid: 889683
productid: 889684
productid: 889685
productid: 876868
productid: 876840
productid: 840962
productid: 83094
"""
Antworten