1
TimePPT 2018-06-20 12:00:35 +08:00 1
正确的姿势是装个 ubuntu 虚拟机,然后再配置……
Win 下配 Python 环境对零基础初学者来说简直是摧残…… |
2
DrinkMoreWater OP @TimePPT 虽然有种不知其意的感觉, 但是还是谢谢你。
|
3
jiangnanyanyu 2018-06-20 12:10:09 +08:00 via Android 1
我当初鼓捣 Python 在 win10 下,一点问题没遇到。。。估计是我运气好。。。
|
4
prim 2018-06-20 12:12:29 +08:00
1210102
|
5
DrinkMoreWater OP 没有解答也没关系哈,让帖子变成基础扫盲的交流贴,也很有意义, 不过希望各位大牛讨论的和主题意愿相符,这样这个主题才有它的意义, 谢谢暖贴的。
|
6
soho176 2018-06-20 12:16:53 +08:00
直接开始爬网站啊,爬的过程中遇到什么问题 你解决什么
|
7
soho176 2018-06-20 12:18:16 +08:00
比如你给豆瓣所有的电影名字都爬下来。就这个问题,你看看咋解决。
|
8
chroming 2018-06-20 12:20:53 +08:00 via Android
爬虫先用 requests 跑起来,拿到结果了用 beautifulsoup 处理一下。其他模块用到再看吧。刚入门看太多也看不懂。另外如果是为找工作的话 web 后端好找一些
|
9
DrinkMoreWater OP @soho176 pycharm 安装 scrapy 模块的时候安装不进去,折腾半天就来论坛了, 凭我的功力闭门造车实在是太困难了
|
10
jmjc 2018-06-20 12:22:25 +08:00 via Android 2
你的主题很没重点 urllib requests,selenium,flask,django,redis,mongo,数据挖掘,scrapy,等等... 我猜你要对你做的事情还没重复理解。
最近写的一个 Python 零基础教程,看看有用没 https://www.jmjc.tech/tutorial/python/1 |
11
DrinkMoreWater OP @jmjc 好,瞅瞅
|
12
soho176 2018-06-20 12:24:50 +08:00
@DrinkMoreWater 不懂你啥意思。。conda install scrapy 这样不就安装了吗?
|
13
DrinkMoreWater OP 谢谢💗,每次都会统一感谢回答问题的所有人, 也希望各位新手如果有从帖子得到一些对你的帮助, 留下一句谢谢对这些 V2EX 成员说。
|
14
DrinkMoreWater OP @soho176 会失败, 安装碰到问题,英文我不大懂,这论坛好像不能发截图,所以我就没截
|
15
soho176 2018-06-20 12:31:09 +08:00 1
@DrinkMoreWater 用个图床 贴个网址
|
16
likuku 2018-06-20 12:32:04 +08:00 2
python 是拿来用的,在使用中学习。脱离实际需求,干巴巴硬学,那自然慢的一塌糊涂。
|
17
likuku 2018-06-20 12:35:03 +08:00 1
"能是一个环境安装,模块方面的扫盲贴"
环境?文本编辑器 + 终端 (以前为了自动化批量画统计图和发日报邮件才开始边用边学 py, 就这条件,简单清晰) 模块什么? 官方文档,各种第三方扫盲文,已经太泛滥了吧 |
18
rebeccaMyKid 2018-06-20 12:37:10 +08:00 4
自学,一个字,难。
如果你是在学校还好,有时间磨;在上班也行;如果是脱产,除非家里经济宽裕且支持,不然各种压力下,很难平静地学下去。 而所谓大佬是不会理你的。。因为人家都是科班或者大学学过来的,第一没有感同身受不怎么帮你,第二帮你也没钱收。 从不懂到入门挺难的(当然回过头来就发现其实很简单一件事情),入门之后再选择要努力的方向会简单一些。入门的概念挺宽泛,可以说是对一些基本概念有影响,可以跟编程语言没什么关系。 入门要快,莽一点可以,我觉得你找个好点的网课,udacity,慕课网啊,选个好点的,交点钱快速入门,然后再选要做什么。 而且你还需要: 1. 梯子 2. 英语 百度的东西几乎不能看的。知乎还行。而且你经常问问题都要问准确的问题,宽泛的问题没人回答你的。 上论坛比如 v2,你可能花 30 分钟编辑一个问题,引人喷还得不到答案,可能换一个懂点的,几句话给你解释清楚了。( v 站还是有给力、渊博友善的老哥) 留个 qq 吧,给你解释些入门问题我还是可以的。 上门那教程别看了,这种教程大把。廖雪峰的比那好多了。百度廖雪峰吧 |
19
DrinkMoreWater OP @rebeccaMyKid 531397560,除了谢谢,暂时我也没办法给到你什么💗。
|
20
soho176 2018-06-20 12:48:36 +08:00
@DrinkMoreWater 链接: https://pan.baidu.com/s/1SSqGn4SIZ4dXeQ-V5pIdpg 密码: usps 自己保存到网盘 按照这个看看吧。
安装不成功的库 去 https://www.lfd.uci.edu/~gohlke/pythonlibs/ 下载 whl 文件 然后再安装。 |
21
xpresslink 2018-06-20 12:59:08 +08:00
我建议楼主先学习一下 web 开发
把 Web 服务原理,HTTP 协议,HTML,CSS,Javascript 之类的都明白了。 web 开发中有一个技术就是如何反爬。 之后再学习爬虫技术就事半功倍了。 而且爬虫中最难的技术是如何越过反爬机制。 |
22
DrinkMoreWater OP @soho176 图床的地址,
咨询到了一些解决方法, 如果我解决了, 我会贴图上来到论坛,还是很谢谢你 |
23
encro 2018-06-20 12:59:54 +08:00
首先,你的了解 selenium 和 chromedriver,这两个安装都算比较容易的了。如果遇到问题最好是去 google,然后在 stackoverflow 找答案,如果不能用 stackoverflow 最好不要做程序了吧,搬运工的日子以后会越来越难过的。
其次,可以考虑用自己现在写的代码赚钱。按照你现在的水平,应该也可以赚钱了。虽然不一定现在就能赚到钱,但是可以养成将代码变现的好习惯。 |
24
soho176 2018-06-20 13:07:06 +08:00
|
27
a7a2 2018-06-20 13:53:11 +08:00
争强好胜有能力之人会选鄙视链顶端的有难度有挑战的语言来学习
学生党大多都是 java 或者 c 系列,简单高效敏捷还是 golang python 感觉很乱 |
28
tianhualefei 2018-06-20 14:33:07 +08:00 via iPhone 1
我也自学过 python,现在上班还在没事捣腾 Python,爬虫,数据挖掘等。
入门选手,不要瞎折腾配置各种工具,不要瞎折腾,不要瞎折腾。。。。 Anaconda3 已经包含了数据科学所需要的大部分库了。还自带的命令行 prompt,编辑器 spyder,不需要别的东西,至少爬虫,数据挖掘入门不需要,也用不上捣腾别的东西。浪费入门的时间,看代码的 notepad++编辑器就贼好使。 想做爬虫,建议买本爬虫的书,国内出版的就行,亚马逊抢搜一下,看看评论,注意 python2 和 python3 的区别,以及有没有源代码的评论。 想买便宜的就再去淘宝搜书。 亚马逊图书的评价是真良心。。 国内讲的不深,好在系统,通俗易懂,把网上乱七八糟,五彩缤纷的爬虫帖子给总结到一起了,爬的也是国内的网站,别看不起国内的书,有些确实很烂,但是比起还没入门的人,够你学的了, 重要的是有代码,代码,能跑的通的代码,比网上瞎逛的时过境迁,到处 bug 的爬虫帖子强多了。 书也不厚,边看书,边敲边对着现有的代码跑起来,也可以改着玩。 刚入门,贪多嚼不烂。 |
29
qinxi 2018-06-20 14:37:34 +08:00
倒不如你直接发帖说出你的问题. 只要不是简单到随便搜索都有的答案,这里很多人还是愿意解答的
|
30
RockShake 2018-06-20 14:46:17 +08:00
你这个问题很简单啊,发张图上来就行了,是因为 Anaconda 的部分源的问题,用上清华的源基本就没问题了,其实 Python 模块安装用 Anaconda 基本不会碰到问题。
|
31
ysc3839 2018-06-20 14:50:02 +08:00
我建议先想一个有意义的小项目,然后试着完成这个项目。最重要的是你要对这个项目有兴趣。
|
32
onice 2018-06-20 14:54:45 +08:00
初学者还是建议廖雪峰的教程。
|
33
bucky 2018-06-20 14:59:32 +08:00
去买某课网的课程吧,django 完整项目,scrapy 完整的项目,flask 完整的项目都有,我觉得这是最好的办法
|
34
laike9m 2018-06-20 15:08:02 +08:00
不懂英文看不懂报错信息的话就有点难咯
|
35
ysc3839 2018-06-20 15:09:09 +08:00
假设我打算做一个获取 V2EX 某节点主题的程序。
先在浏览器的 DevTools 查看网络请求,可以看到主题列表是直接写在 HTML 里面的,那直接向服务器请求,然后解析数据即可。 首先是向服务器请求数据,可以用内置的 urllib,也可以用更加简单的 requests。 请求到数据后,解析数据可以直接用 re,也可以解析 xml 然后获得数据。 如果选择用 re 的话,那就去学习正则表达式。 我自己的自学方法大概是这样,根据项目分析需要用到什么,然后去学习。 |
36
annt123 2018-06-20 15:50:30 +08:00
@ihancheng 别误导别人了,谷歌驱动火狐驱动直接官网( http://docs.seleniumhq.org/download/)有下载,把那个驱动放到 python 的根目录下就可以加载了,而且你两个浏览器的版本不能太高,高版本是不兼容当前驱动的,注意!!!你前面说的安装不成功的模块大部分都是不能 pip 安装的,官网下好安装包然后加压进行安装一个一个排错即可。
|
37
ThirdFlame 2018-06-20 17:05:42 +08:00
看了半天,没有能明白楼主想要表达什么。
第一步都没有迈出去,还在纠结框架为啥装不上。 应该先 requests 爬起来啊,爬的过程中遇到了问题,在一个一个解决啊。 满足不了需求的时候自然需要上框架了。 另外 安装某个东西出错,不应该首先百度 或者 google 么。 可能在 windows 下安装会遇到很多问题,换 linux 系统,比如 ubuntu,pip 或者 apt-get intall 安装,总能安装成功的。 |
38
jeadong 2018-06-20 17:10:41 +08:00
我以前有一个误区就是说道 PY 就想到爬虫...
|
39
tjxiter 2018-06-20 17:26:21 +08:00
我有个学生 12 岁就会 Python 了。
如果是成年人,python 已经是不能再简单了。 1 《 python 简明教程》 练习:codewars.com 2 《 python 学习手册》 练习:爬虫、分析数据(要看下 numpy 或 pandas )等 |
40
summerwar 2018-06-20 17:31:15 +08:00 5
学编程我觉得应该是项目驱动的,就是你先设立一个目标,然后去分析需要哪些东西,然后学相应的东西就行了,如果没有项目或者需要解决的事情,学起来会比较飘渺,没有方向。
以爬虫为例,假如你看到一个电子书的网站,想批量抓取里面的所有下载地址,下载地址是百度网盘,那么你就想我先要获取页面的源代码,然后查能获取源代码的是啥,比如知道了 Requests,然后去学这个,学会之后,你要从列表页的源代码中找到具体页和下一页的链接,那么就查需要啥,查到用 re 或者 beautifulsoup 都可以,那么选一个去学,然后去获取内容。接着是提取页面中的百度网盘地址,用正则去匹配,考虑到不同地址中间的内容不同,可以去尝试做最好的兼容性的正则表达式,或者配置几个不同的正则表达式,一个一个去获取。 最后获取到的批量的百度网盘地址和密码,要保存,那么去想用 mysql 还是 sqlite,学相应的东西,比如 sqlalchemy,然后保存之后,要么去下载,要么是批量保存到自己的网盘的某个目录,最后通过网盘客户端下载,然后再去查需要的东西,最后解决问题。 最终实现的结果就是,直接从那个网站上抓电子书的地址,然后存到百度网盘,全部自动,这样一个项目就完成了。 拿上面的例子来说,主要是你得先有内容,然后分析内容需要啥东西,然后去学。 编程的优势在于解决问题,所以没有问题的时候你得先有问题,否则学完了都不知道干啥用。 |
42
TimePPT 2018-06-20 17:53:56 +08:00
@sakura111 好久没碰 Windows 了不了解哈哈哈
七年前零基础自学 Python 时候在 Win 下因为配环境一度放弃了,直到自己装了 Ubuntu 虚拟机才算正常上手。 自从换了 Mac 后就没换回过 Win …… 主要确实觉的之前 Win 下搭环境对新手极其不友好。本来应该开箱即用立马感受编程乐趣的,为了 PATH 和依赖各种死磕到精疲力尽实在得不偿失 |
43
VivianAnnsesta 2018-06-20 20:01:31 +08:00
学了 c 以后用 PYthon 感觉很不习惯,忽然不需要自己造轮子了
|
44
aihym12 2018-06-20 20:10:58 +08:00 1
你到最后发现你英语是个硬伤,别人出新技术直接看英文文档,你得等中文文档出来才行!别人有问题直接上 stackoverflow 问大神问题,有时候还能遇到在微软谷歌工作的工程师回复你,你不懂英文,只能在 CSDN 这种论坛被人点来点去,或者随手摔一堆你看不懂的代码。或者回复些其他的东西!
|
45
wjidea 2018-06-20 20:29:15 +08:00
架个梯子,学好英语
|
46
DrinkMoreWater OP 环境安装不上已经解决了, 但是让为描述什么问题,还是挺困难的,
在这感谢 @rebeccaMyKid 的指导,希望 V2EX 有更多正能量的人, 而不是光挑刺的人 @summerwar @ysc3839 @tianhualefei 统一感谢, 你们给的意见很中肯,是有思考价值的,感谢, 如果有从这里得到了帮助,请留下你们的感谢帖 |
47
hgjian 2018-06-20 21:21:49 +08:00 via Android
@DrinkMoreWater 先学习一个简单的虚拟机软件 vbox,装好这个软件以后,你可以在这个软件里面装各种操作系统,还可以建立系统镜像方便一键还原,如果你要建立好多个镜像那最好硬盘大点,我是从入门到放弃,因为我不懂英语。
|
48
gouxi 2018-06-20 21:25:42 +08:00 via Android
@TimePPT 没有你们说得那么恐怖吧,我以前学的时候就是 win,也没有遇到无法解决的问题,再说如果设置个环境变量都不会的话,基本上也不用学习 python 了
|
49
ToT 2018-06-20 21:31:17 +08:00 1
一个简单的爬虫没有那么多配置的,建议先了解
广度优先搜索(BFS)/深度优先搜索(DFS)概念; 用单线程爬一个网页; 用多线程爬一个网页; 然后再看 scrapy 文档教程。 感觉你提到的模块都是为了解决特定问题的,从学习的角度来看的话,是遇到了问题再去搜索怎么用,而不是把答案都放到桌子上然后去找问题和理解答案之间的关系。 |
51
soho176 2018-06-20 22:43:01 +08:00
@summerwar 我发现这编程啊,你说的这个所有的学校都应该推广这样学习才对,当年我上学的时候,学了一个学期 java,老师就是在 cmd 敲代码执行 java,我就纳闷了,学的是编程啊,学了一个学期也没有看到编写出来一个软件,哪怕是一个很小的小功能的软件也好啊,这结果就是白学了一年最后还是啥也都不会,可以说全班都是啥都不会。真是太坑了。
|
52
Leigg 2018-06-20 23:08:15 +08:00 via iPhone 1
首先,以你的情况,你的学习必须以就业为导向,且你说没有什么学历,那目前阶段就不要想什么数据分析,数据挖掘,这些不是你短时间内学的出什么名堂的,也不是自学就有人收你的。
你的大方向没有错,爬虫是目前最适合你的方向,你未来花两到三个月的时间专门学习爬虫,最好能找到一套系统的视频来学习,不要看别人的博客来模仿,这是效率最低的学习方式,特别是入门的时候,如果你能充分利用这两到三个月的时间(每天学习四个小时以上),那我相信到时候找一份爬虫的工作对你来说是不难的,有了工作以后你的想法又会比现在上升许多,到时候是该继续深耕爬虫还是走其他方向你会有自己的选择。 切记: 切勿初学时就好高骛远,只恐到头一场空。 |
53
DrinkMoreWater OP 学习的结束时间, 上来统一感谢,那些很中肯的意见, 和分享的心得,自己觉得这些行动很有价值,希望也能为别人带来帮助。
|
54
whoami9894 2018-06-20 23:30:09 +08:00 via Android 1
加油吧,当初也是这么过来的
如果需要,可以留联系方式,一些基础问题我还是能帮你解决的 |
55
DrinkMoreWater OP @whoami9894 谢谢,531397560
|
56
msg7086 2018-06-21 02:23:00 +08:00 2
@soho176 感觉这就是学校之间的差异了。好的老师是不会教成这副德性的。
@DrinkMoreWater 我觉得吧,学编程、学计算机语言、学软件开发,这是三样不同的事情。 你现在是三件事情放在一起做,会不会负担有点太大了? 当年我们学编程是 Pascal 入门。 学计算机语言我是 PHP 入手。 学软件开发则是更后面的事情了(用的易语言)。 一步从零开始用 Python 学编程并编写爬虫,我觉得是不是步子跨得有点太大了呢。 |
57
sola97 2018-06-21 03:23:59 +08:00
前置技能 web 开发
|
58
vegetta 2018-06-21 07:53:06 +08:00
用 pycharm 吧,配置简单。社区版本的就可以了,如果想用专业版,我的博客有激活教程 http://opentutorial.info
|
60
liuzhedash 2018-06-21 10:09:00 +08:00
说句本社区普遍看不起的道路:报培训班,如果经济有困难就去各大培训网站学在线课程。没基础自己瞎折腾是不行的
|
61
xschaoya 2018-06-21 12:54:09 +08:00 via Android
自学,基础教程过一到两遍,看网课项目。自己动手做想做的,比如找些个人小站爬个小黄文小黄图之类的。
|
62
dizzy 2018-06-21 13:00:16 +08:00 1
我能明白楼主的心情,我也是从这条路走过来的。明明简单的代码,却看不懂,看懂的东西过会又忘了。其实原因很简单:缺少大学本科计算机系四年的积累,比如,一个服务端的程序员并不是学了 python,go,java 就能上手开发了,他至少需要这几门基础知识:熟练使用 linux,计算机网络,操作系统,c,unix/linux 系统编程,tcp/ip 编程。其实这也是程序员与程序员之间的差距所在。我不知道现在楼主准备走哪个方向,从我个人的经验来看,开发一个网页也许是一个不错的入门。
所以你可以: 1,买本《图解 TCP/IP 》和《图解 http 》仔细看,目的是初步了解计算机网络的基础。学习爬虫这些知识也是避不开的 2,安装 ubuntu 作为开发的操作系统,可以和现在的 win 组成双系统,学习 linxu 的基本操作,基本即可命令即可,ls,cd,cp,rm,mkdir 等等,这方面推荐《 unix/linux 大学教材》和鸟哥那本书,但都不用事无巨细的看。 3,买本<Flask Web 开发>,跟着这本书走一遍,前面写的东西忘了不重要,重要的是走一两遍,在学习写网站的过程中,会遇到前端的知识,这时可以稍微学习下 html、css、bootstrap,js、ajax 可以暂时跳过,直接抄代码,有精力学习更好。之后可以结合 github 上面优秀简单的项目练手 另外给楼主几个建议, 1,如遇到实在想不通的问题,记下来,然后跳过。 2,用英文在 google 搜索你的问题,这就涉及到两个问题,基本的英文阅读能力和怎么上 google,请自行解决。 3,有一定能力之后可以时常关注工作信息,毕竟工作中学习是最快的。 写得比较散,希望对楼主有点点帮助。 |
63
hezhile 2018-06-21 16:27:21 +08:00
记住,不要用百度,无论是解决技术问题还是其它
简书上就有不少写爬虫的教程 https://www.jianshu.com/p/047b4dd3f911 学会从什么地方获取资讯(比如简书 V2EX 这里 stackoverflow 等等 学会怎么提问(比如你原 po 其实是两个问题,1 一些 python 模块无法安装,2 我想学 python 做爬虫,应该怎么学 第一个问题 这种类型的 往往把出错信息+环境信息用 google 搜一下就能查到答案 第二个问题 看多一点从 0 开始写爬虫的文章 对照自己的知识点 就知道自己要学什么了 |
64
DrinkMoreWater OP 最近题主,只会发感谢帖, 因为在学习的路上, 有些问题是自己也能解决的, 每次我遇到个人觉得特别难的问题, 都是发在帖子上,供初学者参考,统一感谢 V 友的热心帮助
|
65
DrinkMoreWater OP 学习 python 道路上, 如果你对计算机多进程是什么, 多线程是什么这些专业语没有概念, 题主分享一篇
博客,也不是什么国外的资源, 就是百度的, 如果连它是什么都不知道,那要还如何去学习它呢..?我想表达的是,初学者来说应该思考了解计算机概念的重要性,题主也正在努力, 晚安。 |
66
DrinkMoreWater OP |
67
africle 2018-06-22 09:01:38 +08:00
我跟楼主极其相似的经历,建议去网上找些培训公司的视频。
|
68
rebeccaMyKid 2018-06-22 11:00:28 +08:00
@DrinkMoreWater
这种东西你有个模糊的概念就好,不需要细看。等你基础好了,有时间了,或者真的发现在这方面遇到问题了(但估计如果你不了解一些这个到时候即使问题是这个你都不知道)再去看这个。现在学习东西无非自上而下或者自下而上,你又不是大学生了,自下而上感觉不划算,自下而上再从中间往上下渗透我觉得比较靠谱。就好比,锤子都不会用你还去研究锤子的构造,有意义么?但你不学这些,肯定会遇到一些无法想通的疑惑,我觉得最难的就是能跳过这些疑问还能学下去,日后还能回来搞明白。。。 |
69
rebeccaMyKid 2018-06-22 11:02:37 +08:00
我也觉得你去培训班能事半功倍。。找个好点的比如萧老师的培训班?不知道多少钱哈,但我觉得 5000 以下能让你除阿里有找工作能力都不亏。做培训班的人太知道哪些是锤子的使用方法,哪些是构造原理了,能先让你有饭吃,再学习共产主义。
|
70
rebeccaMyKid 2018-06-22 11:04:19 +08:00
能让你出来有找工作能力都不亏*。
就是算法都够你研究几个月了,但你如果只会简单的算法,一些基本的东西都做不出来,也没人会要你。 因材施教很重要。 |
71
DrinkMoreWater OP @rebeccaMyKid 我会了解一下的, 知乎萧老师?
|
72
zgwjustice 2018-06-22 21:20:06 +08:00 via iPhone
@bucky 老哥说的莫非是传?智
|
73
yk4399 2018-06-25 18:28:58 +08:00
战略性 mark
|
74
DrinkMoreWater OP @dizzy 在这感谢 V 友推荐的两本书, 虽然都是概念性,理论性书籍, 但是我个人感觉收益颇多,虽然还没看完,但是已经加深了我对计算机结构重要性的认识, 对我的思维方式还有会有产生影响, 也明白前端代码 UTF -8 是什么意思了, 为什么要声明用 UTF - 8 编码的原因, 这就是我短短看了开头得到的收获, 实践会进步很快,但是连理论都不懂,实践也无从开始,至各位前进者,用热爱的爱好的态度对待编程,然后进行盈利性的使用。
|
75
DrinkMoreWater OP 好久没更新了,最早以为爬虫只要学个 python 就好,在爬的过程中学习了很多,补充英文,解决模块上手速度问题(阅读文档),也学习了正则,学习了前端(因为在爬的时候发现看不懂没办法进行逻辑解析),虽然都是萌新上手,感谢坚持到今天的自己,种瓜不一定得瓜,不种肯定是没有的,至通行者,v2ex 有大佬分享教学资源帖吗,你们觉得比较好的。
|