文章 44
浏览 11238
2018年——全国行政区划代码

2018年——全国行政区划代码

在进行一项基于爬虫的项目开发过程中,需要对行政区划代码进行匹配,如果是精确到省级单位还好处理,但如果是精确到市级单位或者更下一级,就不能单纯手写字典去匹配了。 一开始我采取的是爬取一个第三方网站:https://xingzhengquhua.51240.com/ 这个网站的设计比较简单,查询时的速率比较快。 下面放上爬取这个网站的代码 import requests from lxml import etree http_later="00000000__xingzhengquhua/" http_former="https://xingzhengquhua.51240.com/" city_num='2100' website=http_former+city_num+http_later html=requests.get(website).text htmls=etree.HTML(html) tip=htmls.xpath('//*[@id="main_content"]/table/tr/td/table/tr[1]/td/a[last()]') print(tip[0].....

百度竞价排名小工具😜

百度竞价排名小工具😜

众所周知百度盈利的一个很重要的途径是广告的竞价排名 商家想要向受众推销自己的产品,可以借助百度这样一个平台,但百度的竞价排名并不是一成不变的,商家想要实时观察百度对自己产品的推广情况,我作为爬虫技术的入门者,课外时间和自己的同学开发了这样的一个小工具。 该工具借助python的requests库以及lxml解析库实现主要功能,通过tkinter库实现图像界面,threading库实现多线程。同时显示多条排名。其余还有json库用于处理网页信息。 首先确定我们需要的信息:投放广告公司的名称和网址。 公司名称隐含在V3的标签里 然后使用浏览器F12的开发者工具,定位元素的HTML代码。 但尝试了几次后发现,元素的class似乎是一个随机的字符串,每次刷新后,class都会发生改变。 但山重水复疑无路柳岸花明又一广告,通过定位每条广告右下角浅蓝色的小广告,发现虽然这个元素的class每次也都不同, 但是他们有一个特点:font标签的class属性不管前半部分是什么字符,后半部分都为:ec_tuiguang_container,于是便对边标签class属性进行模糊匹配。 定位到广告后....

谱聚类初探

谱聚类初探

本学期初参加了我校的一个大学生科技活动。 导师甩给我的课题是:“谱聚类算法”,我自己选择的应用方向是“图像分割”。 在网上大量浏览相关帖子后,终于对该算法有了一个大概的掌握。 https://www.cnblogs.com/pinard/p/6221564.html 个人觉得上面这篇博客对算法总体的阐述比较好。 可以作为了解该算法的一篇入门文章。 所谓聚类,如名字一样,就是将杂乱无章的数据,按照彼此之间的相似度,分为几类。其中大量使用了矩阵变换的知识。 输入: 样本集D=(x1,x2,...,xn)(x1,x2,...,xn)。 我是直接从.mat文件读取数据,也可以用matplotlib.pyplot库的imread函数读取普通图片。 写作: import matplotlib.pyplot as plt pic = plt.imread('one.png') 输出: 簇划分C(c1,c2,...ck2)C(c1,c2,...ck2). 再使用 plt.show() 便可以将图像显示出来。 算法如下: 根据输入的相似矩阵的生成方式构建样本的相似矩阵S(网上好多帖子都提示使用“高....

Python Selenium秒杀脚本小试牛刀

Python Selenium秒杀脚本小试牛刀

初次尝试写一个秒杀脚本是在2018.11月即将迎来双十一的时候,但由于当时没有深入探讨,所以最后不了了之,现在正值假期,我闲来无事,所以打算将这个功能完善一下。 最近传出消息,美团、淘宝加强对selemium自动化测试软件的封杀,加之个人经验,这个脚本平时使用还好,但如果真的在双十一这样的高峰购物时间点会无法使用,因为平台会出现对下单商品,加以二维码的检测,而在没有模型训练的前提下,很难突破二维码的限制< 1.首先最开始的部分,会看起来有些傻,因为是用selenium拉起浏览器,所以浏览器内部不会保存你的登录cookie,而淘宝登录的cookie是以近10几位字段进行加密的密文,导致如果我们自己想用POST的方式的登录也不可能。所以只能在秒杀开始之前用手机扫码登录,做好准备。😑 2.登录成功后,get方式跳转 "https://cart.taobao.com/cart.htm"(即进入购物车进行准备) 3.外加while死循环,内部加以if判断,用datetime库的datetime.now()函数获取当前时间,返回的是一个字符串 4.对字符串进行比较,如果等于则规定时间则....

多项式求和

多项式求和

因为参加了CCF的认证考试,加之这假期事情比较少,所以决定静下心来学习几个算法,按照CSP网站上的题目去做,第二道题便是多项式求和。以前在数据结构课上,便了解过多项式求和利用的是栈这个数据结构。不过一直以来遇到需要自己实现的数据结构,我便有点犯怵。不过这次既然决定学习了,所以便决定解决这个问题。 要求如下: ‘+’、‘-’、‘x’、‘/’ 分别表示加减乘除四个基本操作 ‘(’、‘)’分别表示左右括号 要求计算最后结果 思路 分别需要两个栈来分别存放,操作数和操作码。 将多项式作为字符串进行输入。 之后遍历字符串,遇到操作数直接进栈,遇到操作码则较为复杂。 遇到操作码,需要和栈顶存放的操作码进行比较,若高于栈顶操作码,说明之后的出栈的顺序不会影响操作码的计算结果,操作码直接进栈即可。(因为出栈时是后入栈的先出栈,也先计算) 若低于栈顶操作码,则需要将栈顶操作码出栈,操作数出栈两次将结果进行计算,之后再将结果入栈。 若遍历结束,也即遇到'\0'符号,若这是操作码栈中不为空,则需依次出栈计算结果。直到操作码栈为空。 C/C++代码: #include <iostream>....

关键路径

关键路径

基于Python和C实现