मैं इस पेज. मैंने find_all विधि के भीतर टैग के विभिन्न संयोजनों का प्रयास किया है लेकिन मुझे जो कुछ मिल रहा है वह खाली सूची है। मैं क्या गलत कर रहा हूं?

u = 'https://www.dianeslingerie.com/product/serie-piana-short-sleeve-tunic-by-mey/'
r = requests.get(url)
c = r.content
soup = BeautifulSoup(c, "html.parser")
soup.find_all('div', {'class':'summary-container'})
0
PranavM 8 मई 2020, 15:15

2 जवाब

यह वही करना चाहिए जो आप चाहते हैं:

import requests
from bs4 import BeautifulSoup

url = 'https://www.dianeslingerie.com/product/serie-piana-short-sleeve-tunic-by-mey/'

r = requests.get(url)

soup = BeautifulSoup(r.text, "html.parser")

price = soup.find('span', {'class': 'woocommerce-Price-amount amount'})

print(price.text)

इसे प्राप्त करने के लिए, आप पृष्ठ का निरीक्षण करना चाहते हैं और एक वर्ग, एक आईडी या एक HTML टैग की तलाश कर सकते हैं जो उस वस्तु के लिए अद्वितीय है जिसे आप स्क्रैप करना चाहते हैं।

इस मामले में, 'woocommerce-मूल्य-राशि राशि' वर्ग केवल पृष्ठ के मूल्य में दिखाई देता है: एचटीएमएल टैग दिखाने वाले पेज का स्क्रीनशॉट

जैसा कि हम देख सकते हैं, यह एक स्पैन टैग के अंदर है, इसलिए हम इसका उपयोग उस वर्ग के साथ करते हैं जो हमने पहले पाया था और हमें निम्नलिखित आउटपुट मिलते हैं:

$152.00
1
Vitor 8 मई 2020, 15:47
धन्यवाद। कई बार भले ही मैं सही वर्ग के साथ प्रयास कर रहा हूं, यह कुछ भी वापस नहीं कर रहा है। उदाहरण के लिए दिए गए में यदि मैं आइटम का नाम लेना चाहता हूं, तो मुझे इसे 'h1' टैग में वर्ग 'product_title प्रविष्टि-शीर्षक फ्यूजन-उत्तरदायी-टाइपोग्राफी-गणना' के साथ प्राप्त करना चाहिए। लेकिन मुझे कुछ नहीं मिल रहा है। क्या आप बता सकते हैं क्यों?
 – 
PranavM
8 मई 2020, 17:33
ईमानदार होने के लिए, मुझे नहीं पता कि यह कोई क्यों नहीं लौटा रहा है, लेकिन मैं इसे दूसरे तरीके से हासिल कर सकता हूं: name = soup.find('div', {'class': 'summary-container'}).find('h1')
 – 
Vitor
8 मई 2020, 18:18
import bs4
import requests
u = 'https://www.dianeslingerie.com/product/serie-piana-short-sleeve-tunic-by-mey/'
r = requests.get(u)
c = r.content
soup = bs4.BeautifulSoup(c, "html.parser")
price = soup.find("span", {"class": "woocommerce-Price-amount amount"})
print(price.get_text()) # $152.00
0
Balaji Ambresh 8 मई 2020, 15:37