1.爬虫的基本流程:

通过requests库的get方法获得网站的url

浏览器打开网页源码分析元素节点

通过BeautifulSoup或者正则表达式提取想要的数据

储存数据到本地磁盘或者数据库

2.正式开工啦

url = “http://www.jianshu.com”

page = requests.get(url) #发现返回状态码403,说明有问题出现(除200外,其他的都是有问题的)

#这个时候查看一下爬虫的robots协议,的确有些问题,解决方案如下:

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'}获取html页面

page = requests.get(url, headers = headers)

demo = page.text

#记住,有时候有可能出现编码问题

page.encoding = page.apparent_encoding

#将获取的内容转换为BeautifulSoup格式,并将html.parser作为解释器(熬一锅汤)

soup = BeautifulSoup(demo, 'html.parser')

#以格式化的形式打印html

print(soup.prettify()) #利于分析元素节点

#查找所有a标签中class=‘tilte’的语句

titles = soup.find_all('a', 'title')

#打印查找到的每一个标签的string和文章链接

for titile in titles:

print(title.string) #打印字符串

print("http://www.jianshu.com" + title.get('href')) #利用title的get方法获取连接,可通过dir(titles)查看可用的方法

#将获取的内容写入本地磁盘

with open('aa.txt', 'w') as f:

for title in titles:

f.write(title.string+'\n')

f.write('http://www.jianshu.com' + title.get('href') + '\n\n')

python爬虫框架源码_python爬虫的基本框架相关推荐

  1. python爬网页源码_python爬虫爬取网页的内容和网页源码不同?

    可以看到这里id为k_total的元素值不同,爬出来是1,网页源码是55. 附还未完成的代码:import requests from bs4 import BeautifulSoup import ...

  2. python量化策略源码_Python量化交易进阶讲堂-创建自定义量化回测框架

    欢迎大家订阅<Python实战-构建基于股票的量化交易系统>小册子,小册子会陆续推出与小册内容相关的专栏文章,对涉及到的知识点进行更全面的扩展介绍,并且会有选择地收录至小册中,更便于广大读 ...

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

    爬虫,就是用程序代替人去访问网站,然后把网站上需要的东西拿下来:类似人输入网址,看到页面,然后复制粘贴,只是把这个过程自动化. 那么第一步就是去访问网站,要看到网站的页面,对程序来说也就是源码.笔者在 ...

  4. python算法实现源码_python 实现A_算法的示例代码

    python 实现A_算法的示例代码 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  python 实现A_算法的示例代码.txt ] (友情提示:右键点上行txt ...

  5. python人脸识别源码_Python 抖音机器人,让你找到漂亮小姐姐

    本项目作者沉迷于抖音无法自拔,常常花好几个小时在抖音漂亮小姐姐身上. 本着高效.直接地找到漂亮小姐姐的核心思想,我用 Python + ADB 做了一个 Python 抖音机器人 Douyin-Bot ...

  6. python贪吃蛇源码_Python:游戏:贪吃蛇(附源码)

    Python:游戏:贪吃蛇(附源码) 发布时间:2018-09-05 09:59, 浏览次数:1295 , 标签: Python 贪吃蛇是个非常简单的游戏,适合练手. 首先分析一下这个游戏 1.蛇怎么 ...

  7. python字符串替换源码_Python实现字符串中某个字母的替代功能

    Python实现字符串中某个字母的替代功能 今晚想实现这样一个功能:将输入字符串中的字母 "i" 变成字母 "p".当时想的很简单,直接用for循环遍历,然后替 ...

  8. python关键字提取源码_python实现按关键字筛选日志文件

    最近忙成了狗,五六个项目堆在一起,头疼的是测试还失惊无神的给我丢来一个几十甚至上百M的日志文件,动不动就几十上百万行,就算是搜索也看得头昏眼花的,因此自己花了点时间写了一段小脚本去过滤日志,当然这样的 ...

  9. python关键词提取源码_Python 结巴分词 关键词抽取分析

    关键词抽取就是从文本里面把跟这篇文档意义最相关的一些词抽取出来.这个可以追溯到文献检索初期,当时还不支持全文搜索的时候,关键词就可以作为搜索这篇论文的词语.因此,目前依然可以在论文中看到关键词这一项. ...

最新文章

  1. 前端学习(2575):vue-route使用场景
  2. 计算机扩展卡,对于电脑来说, 扩展卡是什么?与接口又有什么关系呢?
  3. [4] ADB 应用管理
  4. 新开博了,欢迎大家来做客!
  5. vijos1053 用spfa判断是否存在负环
  6. 【CF1325E】 Ehab's REAL Number Theory Problem(思维+最小环bfs)
  7. DVWA模块使用教程(二)
  8. java 编写桌面_利用Java技术编写桌面软件基础
  9. wordpress pdf_9个适用于WordPress的最佳PDF插件
  10. pcsc linux,Linux 下集成 pcsc ccid libusb
  11. 大数据学习之Hive
  12. 「电子数据交换EDI」OFTP-OFTP2协议
  13. unity3d 骨骼模型武器绑定
  14. 互补DNA(Complementary DNA)
  15. 红米note4x标准版和高配版电池性能对比评测
  16. 计算机英语boppps,BOPPPS教学法在英语教学中的应用
  17. DARPA呼吁采用通信技术概念来支持Troop的丛林作战
  18. 根据生日获取生肖、年龄、星座
  19. PWN lotto [pwnable.kr]CTF writeup题解系列10
  20. python三维变量合并_Python reshape的用法及多个二维数组合并为三维数组的实例

热门文章

  1. 液晶显示器的台式计算机耗电,电脑的显示器一开一关耗电量大么 注意 是显示器的开关...
  2. scpi指令转换c语言,[C#源代码]使用SCPI指令对通讯端口(RS232/USB/GPIB/LAN)进行仪器编程...
  3. nt服务器需要的协议,构建没有NT服务器的NT域
  4. java 改为matlab_用面向对象的方法将一段JAVA代码转化为matlab
  5. hj212协议如何和php通讯,5G/4G边缘计算网关如何实现HJ212协议上报
  6. java select 不是date,iPhonedateselect器,而不是键盘?
  7. 怎么查到运行的时间_“我的成考录取通知书怎么还没来,它是不是迷路了?”...
  8. get请求可以传body吗_详解用 Go 语言解析各种 HTTP 请求的方法
  9. 面向抽象编程(模拟Spring的简单实现)
  10. 基于JAVA+SpringMVC+Mybatis+MYSQL的学生课堂考勤管理系统