lofter的同人文都是一篇一篇的,懒得找,所以就花了点时间写个爬虫,爬取文本数据存储成本地text。这里主要通过lofter的作者专区文章搜索接口地址进行爬取数据。

示例:我是走高冷路线的    该作者的文章搜索地址为:http://sanliubixian.lofter.com/search?q=

后面输入文章名就能搜索到该作者对应的文章。而且还有一个特点,她的文章顺序是根据序号来的,如征服欲1,征服欲2 ...这样,我们就可以进行循环爬取数据了。

1.准备工作

前面踩了很多坑,这里也不一一详细叙述了。我的本地python版本是2.7的。这个注意一下,因为2.7和3.x有一些区别。在这里最主要的区别是使用的urllib模块。这里可以参考一下这位博主。

python 2.xx使用import urllib.request报错no module named request_典笛安的博客-CSDN博客

第二个就是安装web模块 ,pip install web.py即可安装。

第三个就是编码问题,这里建议使用python的开发工具,我用的是submit text。

其他的就没了,反正就一个py文件,直接上代码吧

index.py

#!/usr/bin/python
# -*- coding: UTF-8 -*-import re
import urllib
import urllib2
import web
import json
urls = ('/', 'hello'
)
app = web.application(urls, globals())# 定义函数
def gettext( i ):url = 'http://sanliubixian.lofter.com/search?q='keyword = i.encode(encoding='utf-8')key_code = urllib.quote(keyword)  # 对请求进行编码url_all = url+key_codeheader = {'User-Agent':'Mozilla/5.0 (X11; Fedora; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}   #头部信息request = urllib2.Request(url_all,headers=header)reponse = urllib2.urlopen(request).read()from bs4 import BeautifulSouphtml_doc = reponse;#创建一个BeautifulSoup解析对象soup = BeautifulSoup(html_doc.replace(' ', ' '),"html.parser",from_encoding="utf-8")#获取文本title = soup.find('h2')print titleif title==None:print "全文数据抓取完成!!!"return "false"else:p_nodes = soup.find_all('p')fh = open("./"+title.get_text()+".txt","wb")    # 将文件写入到当前目录中fh.write(title.get_text().encode(encoding='utf-8'))fh.write('\r\n')for p_node in p_nodes:#print p_node.get_text()fh.write(p_node.get_text().encode(encoding='utf-8'))fh.write('\r\n')fh.close()print "抓取:"+title.get_text().encode(encoding='utf-8')return "true"class hello:def __init__(self):web.header('content-type', 'text/json')web.header('Access-Control-Allow-Origin', '*')web.header('Access-Control-Allow-Methods', 'GET, POST')def GET(self):i = web.input(name=None)for num in range(1,30):s=i.name+str(num)result=gettext(s)if result=="false":break'''t={'msg':'开始爬取数据...','title':title.get_text()}s={}s['data']=treturn json.dumps(s,ensure_ascii=False)'''def POST(self):a = int(web.input().a)b = int(web.input().b)return a + bif __name__ == "__main__":app.run()

运行结果:

码字踩坑不易,转载请注明出处!!谢谢!!

lz初次接触python,自己找资料自己看文档写的,如有不专业之处,还请专业人士见谅

python抓取静态网页相关推荐

  1. python 抓取的网页默认是bytes的,要转码

    python 抓取的网页默认是bytes的,要转码. 查看网页源码可以看到,我本次抓取的网页的编码方式是utf-8的. req = urllib.request.Request(url=myurl,h ...

  2. Python 抓取动态网页表格信息

    五一假期,研究了下Python抓取动态网页信息的相关操作,结合封面的参考书.网上教程编写出可以满足需求的代码.由于初涉python,过程中曲折很多,为了避免以后遇到问题找不到相关的信息创建本文. 准备 ...

  3. python正则匹配找到所有的浮点数_如何利用Python抓取静态网站及其内部资源

    遇到的需求 前段时间需要快速做个静态展示页面,要求是响应式和较美观.由于时间较短,自己动手写的话也有点麻烦,所以就打算上网找现成的. 中途找到了几个页面发现不错,然后就开始思考怎么把页面给下载下来. ...

  4. 一步一步学习专栏:Python爬取静态网页(猫眼top100),实力好文

    一步一步学习专栏:静态网页爬取 阿巴阿巴阿巴 大家好,我是猕猴tou儿,我又回来了,这篇帖子将以猫眼电影榜单top100榜为例讲解爬取静态网址的基本思路与爬取方法. 环境 这也是我们的第一步: imp ...

  5. 雪球python爬虫炒股_如何使用 Python 抓取雪球网页?

    我想使用beautifulsoup或者其他的python包 抓取 雪球网页上面的一些组合,因为雪球网的组合持仓变动的时候,雪球网不会给提示,比如说,我想抓取这个http://xueqiu.com/P/ ...

  6. python爬取网页停止_如何使用Python抓取雪球网页?

    我想使用beautifulsoup或者其他的python包 抓取 雪球网页上面的一些组合,因为雪球网的组合持仓变动的时候,雪球网不会给提示,比如说,我想抓取这个http://xueqiu.com/P/ ...

  7. Python抓取淘女郎网页信息以及代码下载

    上一篇Python抓取糗事百科网页信息以及源码下载 也是利用python抓取网页信息,轻车熟路,知道一个之后,轻轻松松就是实现啦. 淘女郎网页地址:https://mm.taobao.com/json ...

  8. python爬取斗鱼鱼吧_[Python爬虫]使用Python爬取静态网页-斗鱼直播

    作者:宅必备 Python爱好者社区--专栏作者 一个会写Python的Oracle DBA 个人公众号:宅必备 公众号:Python爱好者社区 作者其他文章: 好久没更新Python相关的内容了,这 ...

  9. python爬取静态网页_Source of a. 使用Python爬取静态网页-斗鱼直播 - django-\/\/ i K |...

    2018-02-09 python 宅必备 好久没更新Python相关的内容了,这个专题主要说的是Python在爬虫方面的应用,包括爬取和处理部分 第一节我们介绍如何爬取静态网页 静态网页指的是网页的 ...

  10. python 抓取同花顺网页数据,记录一下

    chrome浏览器,输入网址后,F12 按红色标记,找到数据请求地址url, 这是请求 Headers 通过requests get方法抓取网页 requests.get(url=url, heade ...

最新文章

  1. linux yum localinstall 解决本地rpm包的依赖问题
  2. Android SDK更新的问题
  3. 数据中心电池室管理之经济实用性方法的探索
  4. foreach jdk8 递归_[Java 8] (8) Lambda表达式对递归的优化(上) - 使用尾递归 .
  5. Boole‘s,Doob‘s inequality,中心极限定理Central Limit Theorem,Kolmogorov extension theorem, Lebesgue‘s domin
  6. C#多线程技术总结(异步)
  7. Linux磁盘空间监控告警
  8. html制作炸金花,如何在微信小程序上制作炸金花?
  9. 额外参数_Redis的复制参数学习笔记
  10. pp助手苹果版_PP助手将下架?越狱时代已经过去,到底是该喜该悲
  11. 特殊字符 U+200X/
  12. Windows开启SSH连接
  13. 学习:Ubuntu14.04编译caffe问题记录
  14. 【SDOI2008】Sandy的卡片 DP
  15. 天馈线测试仪是什么?
  16. python re库,Python中的Re库简要总结
  17. 智能客服vs人工客服,两者真水火不容?
  18. 成语接龙php源码,weiphp——成语接龙插件的对接和使用
  19. 前端面试--什么是防抖和节流
  20. 【电子产品】ThinkPad S5 Intel R Dual Band Wireless-AC 3165 网卡驱动莫名

热门文章

  1. C语言必背知识点(期末不挂科)
  2. 书单(三)-从小到大课外阅读书籍顺序
  3. 入门HTML之表格属性bgcolor background bordercolor(light dark)
  4. win7去除快捷方式箭头
  5. JavaWeb开发QQ动态表情-源文件
  6. bat脚本_更改文件夹访问权限
  7. Java | 绘图:Graphics2D
  8. 使用VMware虚拟机通过Panabit抓取爱快虚拟机PPPoE报文
  9. 清明梦听说过吗?你对于控制你做梦这件事上的心力有多深
  10. 从材料到芯片验证,是逃难还是人生的机遇?