我不是药神 python分析

1#-- coding: utf-8 --
2from bs4 import BeautifulSoup
3import requests
4import pandas
5import time
6newarry = []
7user_agent = ‘*
8headers = {‘User_Agent’: user_agent}
9for i in range(15):
10 gradeUrl = ‘https://movie.douban.com/celebrity/1274297/partners?start=‘+str(i*10)
11 res = requests.get(gradeUrl, headers)
12 soup = BeautifulSoup(res.content, ‘html.parser’).find(class_=’article’)
13 for item in soup.find_all(class_=’partners item’):
14 partner = item.select(‘a’)[1].text
15 times = item.select(‘li’)[1].text
16 collect_num = item.select(‘li’)[2].text
17 url_list = item.select(‘li’)[1]
18 for url in url_list.find_all(‘a’):
19 each_page = requests.get(url.get(‘href’), headers)
20 sub_res = BeautifulSoup(each_page.content, ‘html.parser’)
21 info = sub_res.find(id=’wrapper’)
22 movie_name = info.select(‘span[property=”v:itemreviewed”]’)[0].text
23 print(movie_name)
24 director = info.find(class_=’attrs’).select(‘a’)[0].text
25 types = ’ ‘.join([style.text for style in info.select(‘span[property=”v:genre”]’)])
26 if info.find(class_=’ll rating_num’) is None:
27 rate = 0
28 else:
29 rate = info.find(class_=’ll rating_num’).text
30 newarry.append({
31 ‘partner’: partner.split(” “)[0],
32 ‘time’: times[5],
33 ‘collect_num’: collect_num,
34 ‘movie_name’: movie_name,
35 ‘director’: director,
36 ‘types’: types,
37 ‘rating’: rate
38 })
39 time.sleep(2)
40 print(newarry)
41
42new_df = pandas.DataFrame(newarry, columns=[‘partner’, ‘time’, ‘collect_num’, ‘movie_name’, ‘director’, ‘types’, ‘rating’])
43new_df.to_excel(‘D:\partner.xlsx’)
44print(new_df)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值