600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > python源码_Python爬虫入门之获取网页源码

python源码_Python爬虫入门之获取网页源码

时间:2021-08-05 04:53:35

相关推荐

python源码_Python爬虫入门之获取网页源码

爬虫,就是用程序代替人去访问网站,然后把网站上需要的东西拿下来;类似人输入网址,看到页面,然后复制粘贴,只是把这个过程自动化。

那么第一步就是去访问网站,要看到网站的页面,对程序来说也就是源码。笔者在学爬虫时曾被这一步卡了挺久;想爬知乎,但查了不少资料,大多是说怎么解析源码的,怎么从源码中定位需要的内容;但源码从哪来呢?源码不过就是字符串,总会有工具能提取的,是在不行自己写工具也行;但对于高手们来说,这似乎是个简单到不需要说的东西;无米之炊啊;我也是菜鸟,所以准备写一写。

01安装python

当然,最最基础的还是得先把Python装上,还有写代码的工具;推荐Pycharm。安装的教程网上很多,搜下就有,这里放一个链接/lvtaohome/p/11121377.html。Pycharm用免费版就行,小白要有小白的自觉,高级的用不上的。Python版本用3的。

装好Pycharm后,要安装库。库就是别人写好的程序,做成了工具箱;当成个装了锤子、剪刀、扳手的工具箱就行;安装库就是从商店把工具箱买回来。

File→Settings→Project Interpreter→右上方的+号→搜索requests(有s)→Install Package安装。如果没有项目,就随便找个地方新建个txt文档,后缀改成.py,然后用Pycharm打开。

02如何使用

工具箱买回来了,下面开始用。

importrequests

s = requests.session()

url = ""data = s.get(url)withopen("baidu.txt","w+",encoding='UTF-8')asf:

f.write(data.content.decode("utf-8"))

importrequests 把这个工具箱拿过来。

s = requests.session() 其中的一个工具取个短名,就叫s。

url = "" 这是我们要测试的地址,主要http://不能省。用双引号包起来说明是个字符串。

data = s.get(url) s.get(url)就是让程序去访问网站,拿到源码了,拿到的源码命名为data。

withopen("baidu.txt","w+",encoding='UTF-8')asf:

源码拿到了我们又看不见,很抽象,很难受,我当时是喜欢把它们写到文档里再研究;所以创建个baidu.txt(用完整的路径也行)的文档,w+模式打开,文件编码是UTF-8,告诉程序这个文件里面写的是中文,不是俄语。as f,让这个文件打开后代号为f,对f的操作就是对文件的操作。

f.write(data.content.decode("utf-8")) 对f执行write操作,写入的内容是获取的源码data中的content;data是requests.Session.get返回的一整坨东西,是一个结构体,不是能写入文本文件的字符串,所以要用里面的content。.decode("utf-8") 意思是把鸟语翻译成格式为”utf-8”中文再写进去。

这些代码可以直接复制到Python Console回车就可以执行;会再py文件所在路径或者你自己设定的baidu.txt的路径生成一个baidu.txt的文件;打开就可以看到源码。

打开后可以看到格式比较乱;至于规则化输出,源码解析工具,程序调试之类的事情,后续再写。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。