python爬取酷狗音乐排行榜

yipeiwu_com6年前Python爬虫

本文为大家分享了python爬取酷狗音乐排行榜的具体代码,供大家参考,具体内容如下

#coding=utf-8
from pymongo import MongoClient
import time 
import requests 
from lxml import etree 
 
client = MongoClient()      #连接mongo
hello = client.hello       #连接数据库
user = hello.song         #连接表
 
headers = { 
  'User-Agent': 'Mozilla/5.0 (Android 6.0; Nexus 5 Build/MRA58N)\
  AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Mobile Safari/537.36'} 
 
def get_info(url): 
  '''
  get源码,encode,解析,xpath,保存 
  '''
  response = requests.get(url, headers=headers) 
  response = response.text.encode('utf-8') 
  selector = etree.HTML(response) 
  soup = selector.xpath('//*[@class="pc_temp_songlist "]/ul//li/a/text()') 
 
  #保存到本地
  # with open('aa.txt','a') as f:
    # for i in soup:
      # f.write(i.encode('utf-8') + '\n')
 
  #存入数据库
  for i in soup:
    user.insert({'song': i})
 
if __name__ == '__main__': 
  urls = ['http://www.kugou.com/yy/rank/home/{}-8888.html?from=rank'.format(str(i)) for i in range(1, 24)] 
  for url in urls: 
    print(url) 
    get_info(url)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python爬虫添加请求头代码实例

这篇文章主要介绍了python爬虫添加请求头代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 request import...

python网络爬虫 Scrapy中selenium用法详解

python网络爬虫 Scrapy中selenium用法详解

引入 在通过scrapy框架进行某些网站数据爬取的时候,往往会碰到页面动态数据加载的情况发生,如果直接使用scrapy对其url发请求,是绝对获取不到那部分动态加载出来的数据值。但是通过...

python爬虫之线程池和进程池功能与用法详解

python爬虫之线程池和进程池功能与用法详解

本文实例讲述了python爬虫之线程池和进程池功能与用法。分享给大家供大家参考,具体如下: 一、需求 最近准备爬取某电商网站的数据,先不考虑代理、分布式,先说效率问题(当然你要是请求的太...

零基础写python爬虫之爬虫框架Scrapy安装配置

零基础写python爬虫之爬虫框架Scrapy安装配置

前面十章爬虫笔记陆陆续续记录了一些简单的Python爬虫知识, 用来解决简单的贴吧下载,绩点运算自然不在话下。 不过要想批量下载大量的内容,比如知乎的所有的问答,那便显得游刃不有余了点。...

python3使用requests模块爬取页面内容的实战演练

python3使用requests模块爬取页面内容的实战演练

1.安装pip 我的个人桌面系统用的linuxmint,系统默认没有安装pip,考虑到后面安装requests模块使用pip,所以我这里第一步先安装pip。 $ sudo apt i...