python爬取酷狗音乐排行榜

yipeiwu_com7年前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使用lxml模块和Requests模块抓取HTML页面的教程

Web抓取 Web站点使用HTML描述,这意味着每个web页面是一个结构化的文档。有时从中 获取数据同时保持它的结构是有用的。web站点不总是以容易处理的格式, 如 csv 或者 jso...

Python3实现抓取javascript动态生成的html网页功能示例

本文实例讲述了Python3实现抓取javascript动态生成的html网页功能。分享给大家供大家参考,具体如下: 用urllib等抓取网页,只能读取网页的静态源文件,而抓不到由jav...

详解用python写网络爬虫-爬取新浪微博评论

新浪微博需要登录才能爬取,这里使用m.weibo.cn这个移动端网站即可实现简化操作,用这个访问可以直接得到的微博id。 分析新浪微博的评论获取方式得知,其采用动态加载。所以使用json...

python2使用bs4爬取腾讯社招过程解析

目的:获取腾讯社招这个页面的职位名称及超链接 职位类别 人数 地点和发布时间 要求:使用bs4进行解析,并把结果以json文件形式存储 注意:如果直接把python列表没有序列化为jso...

Python多进程方式抓取基金网站内容的方法分析

本文实例讲述了Python多进程方式抓取基金网站内容的方法。分享给大家供大家参考,具体如下: 在前面这篇/post/162418.htm我们已经简单了解了”python的多进程”,现在我...