![3629157-81cfc7b060230e4c.png](https://i-blog.csdnimg.cn/blog_migrate/bd120a7766ab31110b2dd2dc91ce0963.webp?x-image-process=image/format,png)
前言
又到了我校一年一度的论文开题和中期检查时间,平时看上去忙碌却一个字都还没写的学生还是大有人在的,而我也就是其中一位~今天,我就来说说我是如何利用Python帮小姐姐们写论文的。
PS:不是代写,就是帮忙处理数据,建模,拒绝代写,从我做起。
数据获取很麻烦?
大家都知道,毕业论文大部分都是导师的科研项目,幸运的童鞋可能都有数据支撑了,拿来就用了。可是,接下来的这位学旅游的小姐姐貌似就没有这么幸运了,来,我们一一道来。
这位学旅游的小姐姐的导师,让她统计下某个地区的美食情况,然后做分析;然后小姐姐轻松找到了携程网站,准备大干一场(copy),copy半天数据,发现才弄了几十页;在网上找了爬虫软件,不会用,买了付费,指导也不给力。
![3629157-ff0e859b9e1a3845.png](https://i-blog.csdnimg.cn/blog_migrate/aee85e0bd049b3f418ad7d54f6133d10.webp?x-image-process=image/format,png)
小姐姐,没关系,Python爬虫来搞定~
import requests
from lxml import etree
headers={
'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36'
}
def get_info(url):
res = requests.get(url,headers=headers)
html = etree.HTML(res.text)
infos = html.xpath('//ul[@class="jingdian-ul cf"]/li')
for info in infos:
try:
food = info.xpath('dl/dt/a[1]/text()')[0]
address = info.xpath('dl/dt/a[2]/text()')[0]
comment = info.xpath('dl/dd[2]/a/text()')[0]
print(food,address,comment)
except IndexError:
pass
if __name__ == '__main__':
urls = ['http://you.ctrip.com/searchsite/restaurant/?query=%E9%95%BF%E6%B2%99&PageNo={}'.format(str(i)) for i in range(1,10)]
for url in urls:
get_info(url)
![3629157-54826fcd36ef5bce.png](https://i-blog.csdnimg.cn/blog_migrate/a69073e7fc74134bf51df3f0e9016dd9.webp?x-image-process=image/format,png)
小姐姐曰:其实你是一个好人~
数据处理不太会?
好,有的小姐姐数据有了(可能比较爱笑),但拿来的数据都是各种格式的,例如下面这个小姐姐。
老师给的都是一个个txt,里面全是花括号括起来的,我只是需要里面的几个字段而已啦,以下是聊天记录:
- 小姐姐:大佬,我的数据是这样的,发给我部分文件。
- 我:好的,那你想做什么?
- 小姐姐:就是获取每个txt中的几个字段
- 我:这个很简单呀,这个花括号就是类似字典的结构,解析以下就行。
- 小姐姐:字典?解析?
- 我:。。。好吧,给你写代码吧
这里就不写具体代码了,会python的这个应该问题不大,循环读取文件,用JSON库来解析,提取部分字段就OK了。然后代码几分钟就搞定了,发给小姐姐。
小姐姐曰:大佬,你真快。。。
模型建立无从下手?
像我这种学林业的研究生,大部分同学都没有好好学习一门编程语言,但是毕业论文,大部分情况下又需要进行建模,接下来是小姐姐对话时间。
- 小姐姐:大佬,我需要建模,帮帮我
- 我:你是要回归还是分类?
- 小姐姐:回归的,目前只会用Excel做线性回归,没有创新点,给我来点炸的。
- 我:现在有很多算法呀,knn,svm,集成算法,神经网络,都可以做回归,sklearn调包就行。
- 小姐姐:人家不会嘛,这些我都想来一个,然后看看哪些效果好。
- 我:这个有点多,调参也需要时间的。。
- 小姐姐:求你啦,我请你吃饭。
- 我:好嘞~(无节操)
最后把结果发给她了。
小姐姐日:你什么都会啊,男人果然都是大猪蹄子。
总结
当然,毕业论文真的也没有那么简单,里面还会涉及很多本身专业的东西,Python只是作为一个辅助工具,帮助解决问题而已。譬如说我,有人问,我天天写Python,自己的专业是不是兼顾的不好?对,就是兼顾的不好,所以,我的论文在初期就遇到了坑,好在现在都处理好了,我论文的坑,下次再讲~
预知后事如何,请听下回分解~