Python 3.x 高评分电影爬取

作者: 无量儿 | 来源:发表于2017-04-11 11:34 被阅读112次

    电影网站是随意选取的,如果要爬取其他电影网站需要有所改动。
    利用 requests 库向服务器发送请求获取数据,利用 BeautifulSoup 库解析所获取的数据。代码如下:

    from bs4 import BeautifulSoup
    import requests,time
    urlm = ['http://dianying.2345.com/list/kehuan-------{}.html'.format(str(i)) for i in range(1,36)] # 利用列表解析式,实现科幻片多页爬取
    def movie(url,dicti=None):
        wb_data = requests.get(url) # 向服务器发送请求,要料
        soup = BeautifulSoup(wb_data.text,'lxml') # 汤 = BeautifulSoup(料,食谱)
        titles = soup.select('em.emTit > a') # 从汤里挑出各种做好的东西,如标题,评分
        scores = soup.select('span.pRightBottom > em')
        if dicti==None:
            for title,score in zip(titles,scores): # 每次循环将标题和评分组成一对放入字典
                length = len(score.get_text())-1 # 获取评分的数字部分长度
                dicti = {
                    'score': score.get_text()[0:length], # 获取评分的数字部分,例如,“7.8分”的数字部分是7.8,“9分”的数字部分是9
                    'title':title.get_text()
                }
                if float(dicti['score']) >= 9.1: # 如果评分大于9.1分输出
                    print(dicti)
    for single_url in urlm: # 调用函数
        movie(single_url)
        time.sleep(3)  # 时间保护,防止IP被封
    

    相关文章

      网友评论

      本文标题:Python 3.x 高评分电影爬取

      本文链接:https://www.haomeiwen.com/subject/rkuyattx.html