18382747915 发表于 2018-9-28 12:48

用python爬取猫眼前100名电影名单

本帖最后由 18382747915 于 2018-9-28 12:49 编辑

废话少说,看代码:
import re,requests
def maoyan(url,i):
   if i==0:
      i=40
   else:
      i = i - 10
   header = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:62.0) Gecko/20100101 Firefox/62.0',
               'Host': 'maoyan.com',
               'Referer': 'http://maoyan.com/board/4?offset=%s'%i}
   date=requests.get(url,headers=header)
   html=date.text
   paiming=re.findall('<i class="board-index board-index-(.*?)">(.*?)</i>',html,re.S)
   mingcheng = re.findall('<p class="name"><a href="/films/(.*?)" title="(.*?)" data-act="boarditem-click" data-val="{movieId:(.*?)}">(.*?)</a></p>', html, re.S)
   zhuyan = re.findall('<p class="star">(.*?)</p>', html, re.S)
   shijian=re.findall('<p class="releasetime">(.*?)</p>',html,re.S)
   for i ,l in enumerate(mingcheng):
         name=l
         pm=paiming
         sj=shijian
         zy=zhuyan.strip()
         print("--------------------------------")
         print("排名:第%s名"%pm)
         print("电影名称:%s"%name)
         print(zy)
         print(sj)

if __name__=='__main__':
    num=0
    while num<100:
      maoyan("http://maoyan.com/board/4?offset=%s"%num,num)
      num=num+10

18382747915 发表于 2018-9-28 15:06

冼星海ksv 发表于 2018-9-28 14:40
没加代{过}{滤}理,爬多了可能会被屏蔽

那要看具体项目的,如果数据量大考虑代{过}{滤}理,像这种数据量是固定的,没必要

zhaoyun007 发表于 2018-9-28 13:36

一笑懸命桑 发表于 2018-9-28 13:06

lz用的python自带的idle吗

ixsec 发表于 2018-9-28 13:07

{:1_893:}赞一个~~

2205 发表于 2018-9-28 13:10

学习了。似乎还差一步写入文件。嘿嘿

諦覠 发表于 2018-9-28 13:24

有没有php版的Python看不懂..

野山鸡 发表于 2018-9-28 13:25

非常棒,值得参考一下

m0216 发表于 2018-9-28 13:49

看不懂好像很厉害的样子

comos 发表于 2018-9-28 14:07

pyhon新闻与经济的有没有,

zdnyp 发表于 2018-9-28 14:09

Python还是相对比较好上手的{:1_918:}
页: [1] 2
查看完整版本: 用python爬取猫眼前100名电影名单