KHTML

爬虫 1

醉酒当歌 提交于 2020-04-27 13:51:32
1. 使用requests 、urllib构建简单爬虫代码 """ 爬取 唯美女生 网站图片 """ import requests import re import os import time # 1. 请求网页 myheaders = { ' User-Agent ' : ' Mozilla/5.0 ' } # url = "http://pic.netbian.com" url = ' http://pic.netbian.com/4kmeinv ' response = requests.get(url, headers= myheaders) # 2. 处理响应数据, 正则匹配 html = response.text img_urls = re.findall( ' <img src="(.*?)" alt=".*?"> ' , html) print (img_urls) # 3. 下载图片 if not os.path.exists( ' 彼岸图片 ' ): os.mkdir( ' 彼岸图片 ' ) for img_url in img_urls: time.sleep( 1 ) img_name = img_url.split( ' / ' )[-1 ] response = requests.get((url + img_url), headers=

手把手教你使用Python抓取QQ音乐数据(第四弹)

与世无争的帅哥 提交于 2020-04-27 07:46:13
【一、项目目标】 通过 手把手教你使用Python抓取QQ音乐数据(第一弹) 我们实现了获取 QQ 音乐指定歌手单曲排行指定页数的歌曲的歌名、专辑名、播放链接。 通过 手把手教你使用Python抓取QQ音乐数据(第二弹) 我们实现了获取 QQ 音乐指定歌曲的歌词和指定歌曲首页热评。 通过 手把手教你使用Python抓取QQ音乐数据(第三弹) 我们实现了获取更多评论并生成词云图。 此次我们将将三个项目封装在一起,通过菜单控制爬取不同数据。 【二、需要的库】 主要涉及的库有:requests、openpyxl、html、json、wordcloud、jieba 如需更换词云图背景图片还需要numpy库和PIL库(pipinstall pillow) 如需生成.exe需要pyinstaller -F 【三、项目实现】 1.首先确定菜单,要实现哪些功能: ①获取指定歌手的歌曲信息(歌名、专辑、链接) ②获取指定歌曲歌词 ③获取指定歌曲评论 ④生成词云图 ⑤退出系统 代码如下: class QQ(): def menu(self): print('欢迎使用QQ音乐爬虫系统,以下是功能菜单,请选择。\n') while True: try: print('功能菜单\n1.获取指定歌手的歌曲信息\n2.获取指定歌曲歌词\n3.获取指定歌曲评论\n4.生成词云图\n5.退出系统\n')

python爬虫入门 之 requests 模块

三世轮回 提交于 2020-04-27 05:48:46
第三章.requests 模块 3.1基本概念 什么是requests模块? 一种基于网络请求的模块,作用就是用来模拟浏览器发起请求 为什么要使用requests模块? 因为在使用urllib模块的时候,会有诸多不便之处,总结如下 手动处理url编码 手动处理post请求参数 处理cookie和代理操作繁琐....... 如何使用requests模块 安装: pip install requests 使用流程 指定url 基于requests模块发起请求 获取响应对象中的数据值 持久化存储 什么是动态加载的数据? 由另一个额外的请求请求到的数据 如何判断一个页面中的是否存在动态加载的数据? 抓包工具进行局部搜索 如果判定出页面中有动态加载的数据,如何进行数据的定位? 使用抓包工具进行全局搜索 对一个陌生的网站数据进行爬取前一定要判定你爬取到的数据是否为动态加载的!!! 3.2代码展示 需求一 :爬取xx首页对应的源码数据 import requests #1.指定地址 url= "https://www.sogou.com" #返回值是一个响应对象 response = requests. get( url= url) #text返回的是字符串形式的相应数据 page_text = response. text #持久化存储 with open( "./sougou.html",

自己做语料——Python爬取新闻联播文字版

江枫思渺然 提交于 2020-04-26 19:15:24
因为学习需要,想自己弄一些语料玩玩,新闻联播似乎是个不错的选择,然后百度了一下: 感觉还是挺多的。。。。所以我选择了第二个。。就是http://www.xwlbo.com/txt.html这个网址。 看了一下,这个网址是以_1的方式翻页的。 一共有47页,数据追溯到 2015年12月24日新闻联播主要内容 似乎还可以。。。。 分析了下源代码。列表页的文章是用一个列表维护的: 文章内的文字爬取难度一般,但是比较乱 我的思路是:     先爬取文章ID号,再遍历ID号爬一遍各个ID下的新闻的内容 那就, 直接上代码: python爬虫爬取网站内容时,如果什么也没带,即不带报头headers,往往会被网站管理维护人员认定为机器爬虫,所以我们需要伪装浏览器的user-agent。 这个是网上的模板,用来随机组成User-Agent #settings.py   User_Agents = [ ' Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50 ' , ' Mozilla/5.0 (Windows; U; Windows NT 6.1; en-us) AppleWebKit/534.50

python爬取优美图库海量图片,附加代码,一键爬取

旧街凉风 提交于 2020-04-26 16:10:16
优美高清图片为大家提供高清美女套图赏析,非高清不录入,大家的网速要给力。 今天教大家爬取优美图库网站中高质量的图片!! 简单易上手哦~ 使用工具: Python 3.6 pycharm 相关环境: requests parsel xpath 主要内容: 1、系统分析目标网页 2、html标签数据解析方法(xpath) 3、海量图片数据一键保存 爬虫的一般思路: 1、确定爬取的url路径,headers参数 2、发送请求 -- requests 模拟浏览器发送请求,获取响应数据 3、析数据 -- parsel 转化为Selector对象,Selector对象具有xpath的方法,能够对转化的数据进行处理 4、保存数据 代码如下: import requests import parsel # 1、确定爬取的url路径,headers参数 base_url = ' https://www.umei.cc/meinvtupian/meinvxiezhen/ ' headers = { ' user-agent ' : ' Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.122 Safari/537.36 ' } # 2、发送请求 --

拿下60亿流量的《惊雷》都是哪些人在听?python帮你统计出来

末鹿安然 提交于 2020-04-26 13:28:34
前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 作者: 听不来喊麦的C君 PS:如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的吗?说不定你学了可能是两年前人家就学过的内容,在这小编分享一波2020最新的Python教程。获取方式,私信小编 “ 资料 ”,即可免费获取哦! 这看起来不着边际的歌词,配上简单粗暴的蹦迪音乐。 最近,一首《惊雷》的喊麦歌曲在短视频平台火了,震惊了整个音乐圈。 但4月10日歌手杨坤却在直播中批评《惊雷》“要歌没歌,要旋律没旋律,要节奏没节奏,要律动没律动”,评价其“难听”、“俗气”。 4月11日,MC六道以原唱者的身份对杨坤的指责做出回应表示,音乐没有高低之分,称《惊雷》现在比杨坤的任何一首歌都火。一时间更是把《惊雷》推上了风口浪尖。 那么《惊雷》这首歌到底怎么样?都是哪些人在听?今天我们就用Python来给你解读。 01 拿下60亿流量 喊麦歌曲《惊雷》火了! 说道喊麦,作为近年来一种新兴的表演形式,其内容和表达方式则比较简单和浮夸,主要形式是在网上下载一些伴奏(以电音伴奏为主),跟着伴奏以简单的节奏和朗朗上口的押韵手法进行的语言表演。 更简单的说法就是,演唱时不讲究什么技法,带着伴奏对着麦喊就完事。比如之前爆火的《一人我饮酒醉

爬取快代理免费ip,构建自己的代理ip池,不再怕反爬(附代码)

ⅰ亾dé卋堺 提交于 2020-04-26 13:27:38
我们在做爬虫的过程中经常会遇到这样的情况:最初爬虫正常运行,正常抓取数据,然而一杯茶的功夫可能就会出现错误,比如403 Forbidden;这时候网页上可能会出现“您的IP访问频率太高”这样的提示,过很久之后才可能解封,但是一会后又出现这种情况。 因此我们使用某种方式来伪装本机IP,以使服务器无法识别由本地计算机发起的请求,这样我们可以成功地阻止IP被封。所以这时候代理ip就派上用场了。 爬虫的一般思路 1、确定爬取的url路径,headers参数 2、发送请求 -- requests 模拟浏览器发送请求,获取响应数据 3、解析数据 -- parsel 转化为Selector对象,Selector对象具有xpath的方法,能够对转化的数据进行处理 4、保存数据 [环境介绍]: python 3.6 pycharm requests parsel(xpath) 代码如下: import requests import parsel import time def check_ip(proxies_list): """ 检测ip的方法 """ headers = { ' User-Agent ' : ' Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0

手把手教你使用Python抓取QQ音乐数据(第二弹)

流过昼夜 提交于 2020-04-26 12:07:27
【一、项目目标】 通过Python爬取QQ音乐数据(一)我们实现了获取 QQ 音乐指定歌手单曲排行指定页数的歌曲的歌名、专辑名、播放链接。 此次我们在之前的基础上获取QQ音乐指定歌曲的歌词及前15个精彩评论。 【二、需要的库】 主要涉及的库有:requests、json、html 【三、项目实现】 1.以歌曲“泡沫”为例,查看该界面的XHR 2.通过对XHR的Size进行排序,逐个查看(参考英文含义),我们看到第一个红框内是歌曲评论,第二个框内是歌词! 3.分别查看这两条数据Headers里面Parms参数。 4.发现这几个参数可能会代表不同的歌曲,那到底是哪个呢,我们在代开另一首歌对比一下。 5.发现只有这个topid不同,其他都一样,这就代表topid代表不同歌曲的id,同理我们看一下歌词。 6、确定下来:musicid= topid = 歌曲的id,接下来我们的任务是找到这个id。 7.返回以下界面,也就是我们上一个项目的主战场。 参考上一个项目,很容易找到“id”的值就是我们要寻找的id。 所以思路确定下来:先通过input()输入歌名生成url_1找到该歌曲的“id”参数,再生成url_2获取歌词和评论。 8.代码实现:获取歌曲id,如下所示: import requests,html,json url_1 = ' https://c.y.qq.com/soso/fcgi

怎么用Python写爬虫抓取网页数据

淺唱寂寞╮ 提交于 2020-04-26 08:39:06
机器学习首先面临的一个问题就是准备数据,数据的来源大概有这么几种:公司积累数据,购买,交换,政府机构及企业公开的数据,通过爬虫从网上抓取。本篇介绍怎么写一个爬虫从网上抓取公开的数据。 很多语言都可以写爬虫,但是不同语言的难易程度不同,Python作为一种解释型的胶水语言,上手简单、入门容易,标准库齐全,还有丰富的各种开源库,语言本身提供了很多提高开发效率的语法糖,开发效率高,总之“ 人生苦短,快用Python ”(Life is short, you need Python!)。在Web网站开发,科学计算,数据挖掘/分析,人工智能等很多领域广泛使用。 开发环境配置,Python3.5.2,Scrapy1.2.1,使用pip安装scrapy,命令:pip3 install Scrapy,此命令在Mac下会自动安装Scrapy的依赖包,安装过程中如果出现网络超时,多试几次。 创建工程 首先创建一个 Scrapy 工程,工程名为: kiwi ,命令: scrapy startproject kiwi ,将创建一些文件夹和文件模板。 定义数据结构 settings.py是一些设置信息,items.py用来保存解析出来的数据,在此文件里定义一些数据结构,示例代码: 1 # -*- coding: utf-8 -*- 2 3 # Define here the models for your

python+scrapy 爬取西刺代理ip(一)

混江龙づ霸主 提交于 2020-04-26 06:29:02
转自:https://www.cnblogs.com/lyc642983907/p/10739577.html 第一步:环境搭建 1.python2 或 python3 2.用pip安装下载scrapy框架 具体就自行百度了,主要内容不是在这。 第二步:创建scrapy(简单介绍) 1.Creating a project(创建项目) scrapy startproject 项目名称 2.Defining our item(定义我们的项目) 3.writing a spider(写spider) scrapy genspider (spider的名称)(爬取的网页) 4.writing & Configure an item Pipeline(编写和配置项目管道) 5.Execute crawl(执行爬虫) scrapy crawl (spider的名称) 第三步:具体实现 1.创建项目 进入scrapy项目的工作区间(xici项目名) scrapy startproject xici 此时项目结构是这样 2.创建spider爬虫 进入项目创建(注意后面的不是具体地址,是域名) scrapy genspider xicidaili 'xicidaili.com' 此时,你会发现在spiders文件夹下多了个 xicidaili.py 文件(这就是爬虫文件) 3.编写items.py