【问题标题】:Webscraping no result网页抓取没有结果
【发布时间】:2021-06-04 21:38:22
【问题描述】:

我想在everysize.com 网站上打印运动鞋的href Inspected website for href&class

href 位于 li class='item span3 减少 - 加载的值' 中,我尝试使用此代码打印它

import requests

from bs4 import BeautifulSoup

baseurl = 'https://www.everysize.com/'

headers = {
'User-Agent' : 'my user agent which i deleted for this'
 }

r = requests.get('https://www.everysize.com/sneaker-sale/')

soup = BeautifulSoup(r.content, 'lxml')

productlist = soup.find_all('li', class_='item span3 reduced reduced--value loaded')

productlinks = [] 

 for item in productlist:
    for link in item.find_all('a', href=True):
    print(link['href'])

当我尝试在终端中运行此代码时,我只收到以下消息: [Done] 在 0.775 秒内以 code=0 退出 但它应该打印出单独的hrefs?任何人都可以看到我做错了什么

【问题讨论】:

  • 使用您的代码,将解析器从 lxml 更改为 html.parser,并将标记类更改为简单的 item 对我有用。

标签: python web-scraping web-scraping-language


【解决方案1】:

要打印此站点的所有链接,您可以使用以下示例:

import requests
from bs4 import BeautifulSoup

url = "https://www.everysize.com/sneaker-sale/"
baseurl = "https://www.everysize.com"
soup = BeautifulSoup(requests.get(url).content, "html.parser")

for a in soup.select("a.item-link"):
    print(baseurl + a["href"])

打印:

https://www.everysize.com/nike-air-force-1-cv1758-100.html
https://www.everysize.com/adidas-originals-ultraboost-20-eg0754.html
https://www.everysize.com/nike-air-force-1-pixel-ck6649-100.html
https://www.everysize.com/nike-air-force-1-07-ct2302-100.html
https://www.everysize.com/nike-air-force-1-07-dd8959-100.html
https://www.everysize.com/nike-air-force-1-gs-sneaker-314192-117.html
https://www.everysize.com/nike-air-max-270-sneaker-ah8050-100.html
https://www.everysize.com/nike-air-max-270-sneaker-ah8050-002.html
https://www.everysize.com/adidas-originals-supercourt-ee6037.html

...

【讨论】:

  • TY 这行得通,但你知道我怎样才能改变我的代码也能正常工作吗?我认为它必须对类和循环做一些事情,但我找不到错误
  • @Beypa 执行print(soup) 并观察class="item span3 reduced reduced--value loaded" 是否存在。如果不是,请相应更改。
猜你喜欢
  • 2016-07-23
  • 1970-01-01
  • 1970-01-01
  • 2015-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多