自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 爬虫实战:bilibili番剧排名爬取并数据可视化

爬取bilibili的国创动漫的追番人数排行番剧,爬取该网页的番剧信息和各自番播放网页里的简介信息后,将数据存储到Excel和Database,最后通过网页将数据可视化。1、爬取网页、数据解析、数据保存from bs4 import BeautifulSoupimport reimport xlwtimport urllib.request,urllib.errorimport sqlite3from io import BytesIOimport gzipimport timeimpo

2020-12-27 16:42:15 5015 4

原创 爬虫学习案例3:数据可视化

数据可视化利用Flask框架将爬虫得到的数据展示在网页中,更为直观。以案例1中得到的数据为例进行可视化学习。1、导入模块from flask import Flask,render_templateimport sqlite3#数据库import os.path#文件路径2、首页路由#首页@app.route('/')def index(): return render_template("index.html")@app.route('/index')def index1(

2020-12-27 13:21:18 1829 3

原创 爬虫学习案例2:异步爬取

异步爬取异步爬取即爬取动态URL的数据,在网页源代码中找不到需要的数据只有在F12控制台中通过查看资源请求包才能找到对应的数据了URL。一般动态网页采用AJAX框架,只有在访问时才从服务器获取数据不会提前全部静态展示。 其工作原理如下图:下面以NHK新闻网为例,其URL为link。查看源代码发现不能找到新闻内容,在F12控制台中刷新网页找到含新闻内容的资源包,其中第二页URL为link。以该URL进行爬取数据。1、导入模块import jsonimport reimport urllib.re

2020-12-27 13:17:59 625

原创 爬虫学习案例1:同步爬取

同步爬取同步爬取即爬取静态URL的数据,下面以爬取豆瓣Top250电影排行榜的所有电影信息为例,URL为 link。1、导入模块from bs4 import BeautifulSoup #网页解析,获取数据import re #正则表达式,进行文字匹配import xlwt #进行Excel操作import urllib.request,urllib.error #指定URL,获取网页数据import sqlite3 #进行SQLite数据库操作2、定义主函数def main

2020-12-26 21:05:48 485 1

原创 Python:文件读写、序列化、反序列化和JSON

文件读写①读文件:f = open('/Users/michael/test.txt', 'r')#打开文件f.read() #读文件f.close() #关闭文件②由于文件读写时都有可能产生IOError,一旦出错,后面的f.close()就不会调用。所以,为了保证无论是否出错都能正确地关闭文件,我们可以使用try ... finally来实现:try: f = open('/path/to/file', 'r') print(f.read())

2020-11-15 21:19:24 144

原创 Python:错误处理及调试

错误处理①try...except...finally...的错误处理机制try: print('try...') r = 10 / 0 print('result:', r)except ZeroDivisionError as e: print('except:', e)finally: print('finally...')当有ZeroDivisionError错误时跳转到错误代码并指示,不执行except之后语句,会执行finally语句(可无)。

2020-11-15 21:03:32 132

原创 Python:模块的安装及使用

模块模块:一个.py文件就是一个module①相同名字的函数和变量完全可以分别存在不同的模块中,但尽量不要与内置函数名字冲突②为了避免模块名冲突,Python又引入了按目录来组织模块的方法,称为包(Package)例如,顶层包名为test,里面的abc模块为test.③每一个包目录下面都会有一个__init__.py的文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,而不是一个包。__init__.py可以是空文件,也可以有Python代码,因为__init__.py本身就

2020-11-15 20:41:19 255

原创 Python:高阶函数、返回函数、匿名函数、装饰器及偏函数

函数式编程①函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数。高阶函数①变量可指向函数f = absf(-10)#结果为10②函数的参数可传入函数def add(x, y, f): return f(x) + f(y)print(add(-5, 6, abs))#结果为11。③map()函数:map()函数接收两个参数,一个是函数,一个是Iterable(Iterator是惰性序列),map()将传入的函数依次作用到序列的每个元素,并把

2020-11-15 18:45:34 75

原创 Python:切片、迭代、列表生成式、生成器和迭代器

切片切片:取某些变量中部分值,可切片对象:list、tuple、str。①用法:L[0:3]或L[:3]:取list的前3个值L[-3:]:取后三个值L[::2]:取全部相邻两个值[1,2,3,4,5,6][:3]:定义及切片迭代①迭代:for循环来遍历所有元素,可迭代对象:list、tuple、str、dict。②dict的迭代:d = {'a': 1, 'b': 2, 'c': 3}for key in d: #迭代key值for value in d.values():#迭

2020-11-15 00:11:36 69

原创 Python:函数的定义、参数及调用

定义函数定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号,然后,在缩进块中编写函数体,函数的返回值用return语句返回。如果你已经把my_abs()的函数定义保存为abstest.py文件了,那么,可以在该文件的当前目录下启动Python解释器,用from abstest import my_abs来导入my_abs()函数。空函数:def nop(): pass作用:**占位**,如现在还没想好怎么写函数的代码,就可以先放一个pass,让代码能运行起来。pass还

2020-11-13 23:34:12 345

原创 Python:条件判断及循环

条件判断:if语句使用方法:if <条件判断1>: <执行1>elif <条件判断2>: <执行2>elif <条件判断3>: <执行3>else: <执行4>例如:age = 3if age >= 18: print('your age is', age) print('adult')else: print('your age is', age) print('teenager

2020-11-13 22:25:45 155

原创 Python:dict(字典)和set(集合)

dict和set字典dict使用键-值(key-value)存储,具有极快的查找速度,一个key只能对应一个value。定义:d = {'Michael': 95, 'Bob': 75, 'Tracy': 85};写:d['Adam'] = 67;读:d['Adam'];删除:d.pop('Bob')。判断某个key是否在dict中:①执行 'Thomas' in d后返回Flase或者True;②d.get('Thomas')或d.get('Thomas', -1), key不存在则返回

2020-11-13 15:38:58 208

原创 Python:list(列表)和tuple(元组)

list(列表)和tuple(元组):list有序、可增减。列表list定义方法 classmates = ['Michael', 'Bob', 'Tracy']。len(classmates)函数求元素个数。访问元素方法(以最后一个举例):classmate[2]或classmate[-1];其余值依次递增或递减索引值。追加元素到末尾:classmates.append('Adam');把元素插入到指定的位置:classmates.insert(1, 'Jack');删除list末尾的元素:c

2020-11-13 15:05:24 77

原创 Python:字符串和编码

#字符串和编码python3采用unicode编码,可编码中文字符串:ord(‘A’) :获取编码整数chr(65) :编码成字符len(’ ') :字符个数有中文时保存为UTF-8编码,解释器读取时按照UTF-8读取,解释器首行加入# -- coding: utf-8 --在字符串内部:%s :用字符串替换%d :用整数替换%f :浮点数替换%% :一个%有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?,括号可以省略, 如:'Hi,%s,you have $

2020-11-12 23:18:15 102 1

原创 Python:数据类型及变量

Python:数据类型及变量数据类型及变量\n:换行 \t:制表符 \:字符;r’ ’ 将’ '中的转义符不做转义;多行表示方法:\n 或者’’’ ‘’’(交互式);True:1 False:0and or not;通常用全部大写字母变量表示常量,例如PI=3.1415926(可变);除法:/结果始终为浮点数;//结果始终为整型(取结果的整数部分,%为取余);字符串可用" “或’ '括起来,若字符串含有’则字符串用” "括起来;...

2020-11-12 22:51:39 64

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除