我如何使用漂亮的汤来从启动器中获取以下数据?

时间:2019-06-10 02:40:07

标签: web-scraping beautifulsoup kickstarter

我正在尝试从反冲启动器中获取一些数据。如何使用美丽的汤库?

踢入门链接 https://www.kickstarter.com/discover/advanced?woe_id=2347575&sort=magic&seed=2600008&page=7

这些是我需要的以下信息

Crowdfunding goal
Total crowdfunding
Total backers
Length of the campaign (# of days)

这是我当前的代码

import requests
r = requests.get('https://www.kickstarter.com/discover/advanced?woe_id=2347575&sort=magic&seed=2600008&page=1')
from bs4 import BeautifulSoup
soup = BeautifulSoup(r.text, 'html.parser')
results = soup.find_all('div', attrs={'js-react-proj-card grid-col-12 grid-col-6-sm grid-col-4-lg'})
len(results)

1 个答案:

答案 0 :(得分:0)

我会给你一些我知道的提示,希望你能自己做。

    当您滥用服务条款时,
  1. 抓取存在法律问题。

  2. find_all应该与'for'语句一起使用。就像网页上的find all(Ctrl + f)。

例如

for a in soup.find_all('div', attrs={'js-react-proj-card grid-col-12 grid-col-6-sm grid-col-4-lg'}):
     print (a)

3.links应该为'for'语句。 -https://www.kickstarte...seed=2600008&page= 1

在for语句中重复使用粗体,因此您可以按顺序抓取所有数据

4。您应该链接两次。 -在上面的链接中,有pj的列表。您应该获得这些pj的链接。

所以代码的算法就是这样。

    for i in range(0,10000):
        url = www.kick.....page=i
        for pj_link in find_all(each pj's link):
            r2 = requests.get(pj_link)
            soup2 = BeautifulSoup(r2.text, 'html.parser')
......