自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(649)
  • 资源 (4)
  • 收藏
  • 关注

原创 年记2020,新年快乐

2020一切变得忙了起来。第一次准备写年记还是12月31日,然后一直拖到了今天,除夕夜。然而今天的代码依然没有写完,写完年记还是要继续干活。2020年做了很多事,做了一个让自己满意的本科毕业设计,考上了研究生,交到了新的朋友,还通过辅导考研和代写程序实现了一定程度的财富自由。这一年的编程技术有了很大的提升,一年前的我基本只会用C++写算法题,会用python做一些简单的数据分析和深度学习。现在则掌握了很多实际项目中需要用到的东西:docker,scrapy-redis,django,spring boot

2021-02-11 19:55:44 830 1

原创 毕业记——我在华北理工的四年

大三的时候和认识的学姐偶遇,我说学姐我好羡慕你啊,考上研了看你每天都在学校拍照,尽玩了。她说你要好好努力,明年一定就轮到你啦!我对此深信不疑。每天就是呆在自习室里,看着窗外的好天气想着,明年我就有大把的时间可以好好拍拍校园了。没想到阻碍我拍照大业的不是自己没考上研,而是新冠疫情。这个毕业季,我没能拍一张值得留念的毕业照,甚至没能和玩了4年的朋友们再见一面。这样的离别,让人怎能不心生遗憾!燕山脚下、渤海之滨,海滨城市的最大特点就是风大且拥有极其清澈的天空。

2020-08-04 15:41:47 1758 12

原创 Vue错误记录:ajax get后数组与对象的转换

api接口:[{"comment_nums":2242816,"rank_year":2016,"rank":2,"url":"http://product.dangdang.com/23464478.html","book_name":"东野圭吾:解忧杂货店","author":"东野圭吾","publisher":"南海出版公司","price":39.5,"publish_time":"2...

2020-04-13 15:04:31 673

原创 问题解决:'djongo' isn't an available database backend.

在django中使用django连接mongodb时,修改settings.py为如下:DATABASES = { 'default': { 'ENGINE': 'djongo', 'NAME': 'xxx', }}修改后报错:/Applications/PyCharm.app/Contents/helpers/pycharm/django...

2020-04-11 15:37:59 3099

原创 关于Scrapy ItemLoader、MapCompose、Compose、input_processor与output_processor的一些理解

本文以一个当当网图书出版社信息举例,说明Scrapy中,ItemLoader、MapCompose、Compose、input_processor与output_processor的一些使用事项。先给出spider与item的代码实例:spider:def parse_item(self, response): for r in response.css(".bang_list ...

2020-04-09 20:48:05 1182

原创 Docker使用心得与爬坑记录

为了搭建Scrapy-Redis服务而反复地被Docker折麽了数天,终于对于Docker的使用有了一些理解,本文记录初用Docker的一些注意事项。1.为什么要使用Docker下面是两个我遇到需要使用Docker的典型情景:情景1:安装配置数据库非Docker:我们需要一个Mysql、Redis或Mongodb数据库,配过数据库环境的同学都知道,该过程往往需要下载安装包、解压、...

2020-04-07 14:39:20 355

原创 pymongo使用笔记

pymongo使用笔记1. 连接这里只记录无auth连接方式。import pymongoip = 'xxxxxx'client = pymongo.MongoClient(ip, 27017)2. 创建数据库创建数据库douban_booksdb = client.douban_books3. 添加文档这里对douban_books数据库的book集合进行操作。book集...

2020-04-05 00:20:45 599

原创 Mongodb笔记

学习自: MongoDB基础入门到高级进阶_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili、【小马技术】MongoDB 从入门到学会_哔哩哔哩 (゜-゜)つロ 干杯~-bilibilimongodb安装:docker pull mongodbmongodb 连接语句形式:mongodb://[username:password@]host1[:port1][,...hos...

2020-04-04 22:38:07 356

原创 问题解决:Scrapy Unknown command: crawl

今天用pycharm调试新建的scrapy-redis项目报错:Connected to pydev debugger (build 183.4588.64)Scrapy 1.8.0 - no active projectUnknown command: crawlUse "scrapy" to see available commands我没有用scrapy crawl xxx的...

2020-04-02 20:02:55 2358

原创 Scrapy设置User-Agent随机代理

User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。一些网站常常通过判断 UA 来给不同的操作系统、不同的浏览器发送不同的页面,因此可能造成某些爬虫被网站禁止,但通过伪装 UA 可以绕过检测。常见的User-Agent形式如:Mozilla/5.0 (Maci...

2020-04-01 12:16:17 916

原创 问题解决:Selenium Message: invalid argument: invalid 'expiry'

报错背景:在为chromedriver添加cookie时,Selenium的报错:selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: invalid ‘expiry’保存cookie代码如下:cookies = browser.get_cookies()pickle.dump(c...

2020-03-21 16:42:02 9116

原创 Python脚本定时发送微信文件

背景:朋友让我改一个文件,可我改完已经半夜了。这时候如果微信发给朋友恐会打扰他休息。于是决定用Python写一个自动发送微信信息的脚本。任务简述:使用Python自动化程序,把file.txt在早上6点准时拖动到微信并发送。0 准备Pymouse和Pykeyboard分别是Python用来模拟鼠标、键盘操作的包,二者在今年整合到了Pyuserinput这一个包内。windows下安装P...

2020-03-17 16:59:26 6639 1

原创 解决知乎倒立验证码识别

众所周知,知乎对反爬的措施位列全网第一梯队。我在爬取知乎的过程中也是遇到了倒立验证码的问题。解决的办法是开源github项目:zheye。首先安装项目依赖包。Keras==2.0.1Pillow==3.4.2#jupyter==1.0.0#matplotlib==1.5.3numpy==1.12.1scikit-learn==0.18.1tensorflow==1.0.1h5...

2020-02-26 18:22:16 1283

原创 js值类型与引用类型

一个经典的问题:以下两个输出结果为何不一致? // 情况1:值类型 let a = 100 let b = a b = 20 console.log(a) // 100 // 情况2:引用类型 let a = { age: 100 } let b = a b.age = 20 console.log(a.age) ...

2020-02-23 20:12:47 370

原创 问题解决:raise ValueError('Missing scheme in request url: %s' % self._url) ValueError: Missing schem

今天使用scrapy爬取图片时,发现这个错误:raise ValueError('Missing scheme in request url: %s' % self._url)ValueError: Missing scheme in request url: //images2015.cnblogs.com/news_topic/20161020185521154-1185360701.pn...

2020-02-23 14:54:57 2001

原创 问题解决:from . import _mysql ImportError: Library not loaded: @rpath/libmysqlclient.21.dylib

今天用python连接mysql时报错: File "/Users/zhbink/Documents/GitHub/Scrapy/ArticleSpider/ArticleSpider/pipelines.py", line 5, in <module> import MySQLdb File "/Users/zhbink/opt/anaconda3/envs/djan...

2020-02-22 22:32:47 2797

原创 Python生成器generators与yield

在Python中,创建生成器generator的方法之一就是在函数中使用yield关键字,原本的函数就变成了一个generator。换句话说,如果一个函数至少包含一个yield声明(当然它也可以包含其他yield或return),那么它就是一个generator。理解generator的三个要点:generator可以看作一个可以停止的函数。在对generator的连续调用之间,gene...

2020-02-18 15:49:36 399

原创 vscode快速添加代码片段

之前在vscode中写html,只需要输入一个!,再按回车或tab就可以生成一段html代码。在学习vue的过程中,每次都要输入vue的模版,如下图。本文以创建vue模版为例,展示快速添加代码段的方法。shift + ctrl(command) + p,打开搜索栏,输入snippets(英文意思为片段),找到Perferences:Configure User Snippets...

2020-02-18 00:14:49 3553

原创 使用Turicreate三行代码构建推荐系统

Apple开源机器学习框架Turi Create简化了自定义机器学习模型的开发。可以轻易地实现图像识别、聚类分析与推荐系统等多种机器学习需求。本文介绍了使用Turicreate快速构建电影推荐系统的一个实例。记得当初我参加18年泰迪杯时,为了实现推荐系统竟手写了800行代码。但现在看来,利用TuriCreate,基于物品的协同过滤模型(item-based CF)可以在三行代码内轻易完成。...

2020-01-12 19:19:36 874

原创 Jupyter Notebook使用Anaconda虚拟环境

创建和使用虚拟环境的过程见:Anaconda虚拟环境第一步:安装ipykernel:法一:1.进入虚拟环境Windows:在Anaconda Prompt, 运行 activate myenvmacOS & Linux, 在Terminal, 运行 source activate myenv安装ipykernel:conda install ipykernel法二:...

2020-01-10 10:01:16 6398 2

原创 js圈小猫游戏

Catch the cat 是最近较火的休闲娱乐小游戏,该游戏源自www.gamedesign.jp,原名叫 Chat Noir。经国内大佬ganlvtech用 javascript 重写。项目地址:github.com/ganlvtech/phaser-catch-the-cat项目演示:Catch The Cat项目部署这是一个部署极为简单的项目:一共只需下载三个文件就可以完成...

2020-01-06 15:28:51 9122 3

原创 问题解决:NameError: name '__file__' is not defined

今天在命令行想使用os.path.dirname查看文件路径时遇到这个问题:>>> import os>>> print(os.path.dirname(__file__))报错:Traceback (most recent call last): File "<stdin>", line 1, in <module>Na...

2020-01-03 10:31:15 5105 1

原创 年记 2019,新年快乐

2019年,从大三下到了大四上。结束了我大学的最后几场竞赛,结束了(第一次)考研。相比高考,考研有着更大再来一年的可能性。以至于我不敢把上面的括号删掉,也从不敢说“这一切终于结束了”之类的话,更不敢扔掉任何一本书。7月开始着手准备考研,暑假里没有回家,一直留在学校学高数。可能是很久没有学数学的原因,整个夏天都一直在探索属于自己的学习方法,看视频都会,做题却做不对几道。10月是报名的时间,本是...

2019-12-31 23:21:22 614 1

原创 问题解决:dyld: Library not loaded: /System/Library/Frameworks/Ruby.framework/Versions

系统升级到MacOS Catalina 10.15后,MacVim无法使用,报错如下:dyld: Library not loaded: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/libruby.2.3.0.dylib Referenced from: /usr/local/Cellar/macvim/8.1...

2019-12-30 14:16:00 5983

原创 快速生成N*N的随机矩阵

实测单线程生成10000*10000的随机数矩阵只要2s核心思想在于将二维矩阵转化为一维数组进行操作编译:g++ -std=c++11 randomMaker.cpp -o randomMaker运行:./randomMaker <dimension>randomMaker.cpp:#include <cstdlib>#include <algorithm...

2019-10-17 10:28:45 2904

原创 问题解决:xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools)

更新完MacOS 10.15,同时XCode更新至11.1后 使用VSCode编译cpp时出现了这个错误:xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at...下文提到,问题在于 XCode更新后,XCode的命令行工具也需要同步更新Git...

2019-10-14 15:52:45 2265

原创 PAT甲级 1045. Favorite Color Stripe (30)

Eva is trying to make her own color stripe out of a given one. She would like to keep only her favorite colors in her favorite order by cutting off those unwanted pieces and sewing the remaining parts...

2019-05-23 22:18:40 280

原创 PAT甲级 1057. Stack (30) 【树状数组/线段树】

Stack is one of the most fundamental data structures, which is based on the principle of Last In First Out (LIFO). The basic operations include Push (inserting an element onto the top position) and Po...

2019-05-23 18:49:38 483

原创 OpenMP并行实现枚举排序

程序通过生成随机数组,利用OpenMP实现并行化的枚举排序算法,并与串行算法进行了比较。#include <omp.h>#include <time.h>#include <string.h>#include <stdio.h>#define maxn 100000#define NUM_THREADS 20int n;int ...

2019-05-21 16:11:42 1255 1

原创 OpenMP 互斥锁函数

OpenMP API所提供的互斥函数可放在任意需要的位置。程序员必须自己保证在调用相应锁操作之后释放相应的锁,否则就可能造成多线程程序的死锁。下面为OpenMP API函数提供的互斥函数和可嵌套的互斥锁函数。void omp_init_lock(omp_lock*):初始化互斥器void omp_destroy_lock(omp_lock*):销毁互斥器void omp_set_lock(...

2019-05-21 16:08:43 2431

原创 OpenMP critical临界区

临界区用在可能产生数据访问竞争的地方,用法:#pragma omp critical (name) (name可省略)。保证每次只有一个线程进入。注意:critical语句不允许互相嵌套例:在一个并行域内的for任务分担域中,各个线程逐个进入到critical保护的区域内,比较当前元素的最大值得关系并可能进行最大值的更替,从而避免了数据竞争的情况。#include <stdio.h&g...

2019-05-21 16:07:36 2110

原创 OpenMP并行计算矩阵向量相乘

程序计算随机生成的矩阵与向量相乘函数f():单线程计算函数fp():多线程并行计算#include <stdio.h>#include <omp.h>#include <stdlib.h>#include <time.h>const int NUM_THREADS = 20;typedef long long ll;int m ...

2019-05-21 16:06:19 6134 2

原创 OpenMP编程

1. 执行模式概述:OpenMP是跨平台的多核多线程编程的一套指导性的编译处理方案(Compiler Directive),指导编译器将代码编译为多线程程序。Openmp的执行模型采用fork-join的形式,其中fork(派生)创建新线程或者唤醒已有线程;join即多线程的会合。[image:2DCC5666-87E6-475C-9A7B-A94C61A4D4C1-563-000023...

2019-05-21 15:57:37 1903

原创 PAT甲级 1134 Vertex Cover (25 分)

A vertex cover of a graph is a set of vertices such that each edge of the graph is incident to at least one vertex of the set. Now given a graph with several vertex sets, you are supposed to tell if e...

2019-05-20 11:03:24 275

原创 PAT甲级 1135 Is It A Red-Black Tree (30 分) 【红黑树】

There is a kind of balanced binary search tree named red-black tree in the data structure. It has the following 5 properties:(1) Every node is either red or black.(2) The root is black.(3) Every le...

2019-05-19 21:22:09 487

原创 1136 A Delayed Palindrome (20 分) 【大数加法】

Consider a positive integer N written in standard notation with k+1 digits a​i​​ as a​k​​ ⋯a​1​​ a​0​​ with 0≤a​i​​ <10 for all i and a​k​​ >0. Then N is palindromic if and only if...

2019-05-19 18:19:46 471

原创 PAT甲级1137 Final Grading (25)

For a student taking the online course “Data Structures” on China University MOOC (http://www.icourse163.org/), to be qualified for a certificate, he/she must first obtain no less than 200 points from...

2019-05-19 17:32:23 381 1

原创 PAT 甲级 1138 Postorder Traversal (25 分)

Suppose that all the keys in a binary tree are distinct positive integers. Given the preorder and inorder traversal sequences, you are supposed to output the first number of the postorder traversal se...

2019-05-19 12:13:31 175

原创 使用unordered_set&lt;pair&lt;int,int&gt;&gt; unordered_map&lt;pair&lt;int,int&gt;, bool&gt;

本文介绍C++11特性下使用unordered_set<pair<int, int>>与unordered_map<pair<int, int>, bool>的方法,int换为其他数据类型方法一致。众所周知,基于红黑树(RB-Tree)的set与map是可以使用std::pair的,而unoredered_set与unordered_map的内部实...

2019-05-19 10:52:41 7382

原创 PAT 甲级 1139 First Contact (30 分)【模拟好题】

Unlike in nowadays, the way that boys and girls expressing their feelings of love was quite subtle in the early years. When a boy A had a crush on a girl B, he would usually not contact her directly i...

2019-05-19 09:42:35 693

2019蓝桥杯.zip

2019年蓝桥杯B组省赛C/C++试题,包括PDF文件、A-J题全部试题的图片、数据等。试题解析可以参考:https://blog.csdn.net/zhaohaibo_/article/details/88783978

2019-11-12

ACM校赛题解.pptx

ACM校赛

2019-10-26

调用sklearn库的K-Means聚类分析实例

#class sklearn.cluster.KMeans(n_clusters=8, init=’k-means++’, n_init=10, max_iter=300, tol=0.0001, precompute_distances=’auto’, verbose=0, random_state=None, copy_x=True, n_jobs=1, algorithm=’auto’) #参数: #(1)对于K均值聚类,我们需要给定类别的个数n_cluster,默认值为8; #(2)max_iter为迭代的次数,这里设置最大迭代次数为300; #(3)n_init设为10意味着进行10次随机初始化,选择效果最好的一种来作为模型; #(4)init=’k-means++’ 会由程序自动寻找合适的n_clusters; #(5)tol:float形,默认值= 1e-4,与inertia结合来确定收敛条件; #(6)n_jobs:指定计算所用的进程数; #(7)verbose 参数设定打印求解过程的程度,值越大,细节打印越多; #(8)copy_x:布尔型,默认值=True。当我们precomputing distances时,将数据中心化会得到更准确的结果。如果把此参数值设为True,则原始数据不会被改变。如果是False,则会直接在原始数据上做修改并在函数返回值时将其还原。但是在计算过程中由于有对数据均值的加减运算,所以数据返回后,原始数据和计算前可能会有细小差别。 #属性: #(1)cluster_centers_:向量,[n_clusters, n_features] # Coordinates of cluster centers (每个簇中心的坐标??); #(2)Labels_:每个点的分类; #(3)inertia_:float,每个点到其簇的质心的距离之和。

2018-01-26

python爬取淘宝商品信息

import requests from bs4 import BeautifulSoup import bs4 def getHTMLText(url): try: r = requests.get(url, timeout=30) r.raise_for_status() r.encoding = r.apparent_encoding return r.text except: return "" def fillUnivList(ulist, html): soup = BeautifulSoup(html, "html.parser") for a in soup.find('tbody').children: if isinstance(a, bs4.element.Tag): tds = a('td') ulist.append([tds[0].string, tds[1].string, tds[2].string, tds[3].string]) def printUnivList(ulist, num): print("{:^10}\t{:^6}\t{:^6}\t{:^16}".format("排名","学校名称","地区","总分")) for i in range(num): u=ulist[i] print("{:^10}\t{:^6}\t{:^6}\t{:^16}".format(u[0],u[1],u[2],u[3]))

2018-01-26

空空如也

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

TA关注的人

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