![](https://img-blog.csdnimg.cn/543e595494a6418593205c4b2f8542cb.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
爬虫入门
文章平均质量分 61
python爬虫的一些基础知识
xiucai_cs
这个作者很懒,什么都没留下…
展开
-
Python爬虫 随机请求头
user_agent = [ "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50", "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-us) App...原创 2019-03-15 21:11:50 · 1591 阅读 · 0 评论 -
scrapy爬取网站古诗并保存
前言 : 学了scrapy想练习一下成果,于是有了下面的爬取网站的所有古诗的代码main.pyfrom scrapy import cmdlinecmdline.execute("scrapy crawl dmoz".split())items.py# -*- coding: utf-8 -*-# Define here the models for your scraped it...原创 2019-03-12 13:39:21 · 698 阅读 · 0 评论 -
Mongode的简单使用与可视化
MongoDB介绍: 跨平台数据库 类似字典安装: 官方网站(这里用的 http://dl.mongodb.org/dl/win32/x86_64 来替代(官网下载太慢啦)) 创建文件夹(在Mongode bin文件夹下 例如创建data) 执行(mongod --dbpath ./data)(将条命令保存为dat文件 以后都可以利用这个批处理文件来运行Mongode)可视化:...原创 2019-03-17 08:39:27 · 200 阅读 · 0 评论 -
window系统启动redis和清除缓存
一 启动redisdos命令行方式 c:\user\john>d; 进入所在盘D:\>cd D:\Redis-x64-3.2.100 进入安装目录D:\>cd D:\Redis-x64-3.2.100>redis-server.exe redis.windows.conf 启动命令方式二 在redis安装目录下 shift...转载 2019-03-21 09:55:29 · 828 阅读 · 0 评论 -
爬取动态页面原理
动态加载网页的爬取: AJAX一般特点: 页面加载快速 不刷新网页就能更新信息 源代码与网页内容不同 解决: 通过抓包(简单的就是直接利用谷歌浏览器的F12进行network抓包,获取相关js文件)(例如 : 解析js文件的内容)...原创 2019-03-25 20:59:36 · 1038 阅读 · 0 评论 -
爬虫json格式字符串转中文
在做一个爬虫项目的时候遇到的问题是这样的。(.decode()这种方法py3好像已经启用啦)解决:.encode('utf-8').decode('unicode_escape')例: item['content'] = each.encode('utf-8').decode('unicode_escape')结果:参考: https://blog.csdn.net/u014519...原创 2019-03-29 20:08:49 · 547 阅读 · 0 评论 -
Scrapy redis中爬取卡死 解决(清除缓存)
环境: win10 py3.6 pycharm scrapy1.6报错信息2017-05-19 20:08:53 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)2017-05-19 20:08:53 [scrapy.extensions....原创 2019-03-22 21:11:00 · 4056 阅读 · 2 评论 -
Scrapy爬取盗墓笔记 0.2版(mongedb redis)
这次的爬虫相对于上一版来说,增加了对小说内容的爬取,并且利用了Redis数据库。main.pyfrom scrapy import cmdlinecmdline.execute('scrapy crawl dmoz'.split())setting.py# -*- coding: utf-8 -*-BOT_NAME = 'Spider'SPIDER_MODULES = ['Spi...原创 2019-03-22 21:26:44 · 355 阅读 · 0 评论 -
腾讯视频影评爬虫(动态网页)
极客学院的入门爬虫最后一课:环境: win10 scrapy1.6 mongode redis py3.6main.pyfrom scrapy import cmdlinecmdline.execute('scrapy crawl dmoz'.split())settings.py# -*- coding: utf-8 -*-BOT_NAME = 'Comment'SPIDE...原创 2019-03-29 20:54:51 · 569 阅读 · 0 评论 -
python正则表达式中group的用法
import rea = "123abc456"# 代码是最好的例子print(re.search(r'([0-9]*)([a-z]*)([0-9]*)',a).group(0))print(re.search(r'([0-9]*)([a-z]*)([0-9]*)',a).group(1))print(re.search(r'([0-9]*)([a-z]*)([0-9]*)',a)....转载 2019-02-28 12:13:33 · 1561 阅读 · 0 评论 -
python正则表达式学习 findall
import retext = 'to to to how are you a to to'result = re.findall('to', text)print(result)正则表达式中的findall语句,可以找到字符串中所有的需要找到的内容,并且将它打印出来。import retext = 'to to too how are you a to to gongsun...原创 2019-02-17 17:18:37 · 397 阅读 · 0 评论 -
python多线程(1)
import threadingdef thread_job(): print("This is an added Thread, number is %s" % threading.current_thread()) # 线程的名字def main(): add_thread = threading.Thread(target=thread_job) # 添加的...原创 2019-02-16 12:22:19 · 105 阅读 · 0 评论 -
python多线程 (2)
import threadingimport timedef thread_job(): print('T1 start\n') for i in range(10): time.sleep(0.1) # 程序睡眠时间 print('T1 finish\n')def T2_job(): print('T2 start\n') ...原创 2019-02-16 12:37:31 · 557 阅读 · 0 评论 -
python多线程 (3)
import threadingimport timefrom queue import Queuedef job(l,q): for i in range(len(l)): l[i] = l[i]**2 q.put(l) # return l 线程中不可以返回值def multithreading(): q =...原创 2019-02-16 12:57:16 · 94 阅读 · 0 评论 -
python多线程 (4)
import threadingdef job1(): global A,lock lock.acquire() # 锁住 for i in range(10): A += 1 print('job1', A) lock.release() # 开锁def job2(): glo...原创 2019-02-16 13:23:24 · 67 阅读 · 0 评论 -
Python爬虫 打造 图片下载器
环境 : win10, python3.6, pycharm代码:import requestsimport reimport osurl = 'http://image.baidu.com/search/index'# 下载函数def get_img(): # 请求头 kv = { 'User-Agent': 'Mozilla/5.0 (Windows ...原创 2019-03-29 21:12:51 · 329 阅读 · 0 评论 -
meta参数的作用
在使用scrapy进行爬取以下网站时,常常会遇到一些情况。例如: item中的部分内容只能通过parse()函数部分抓取,另外一部分需要设置其他的函数进行抓取,这时候就需要meta参数啦。(meta是字典类型)meta参数在下例中的parseContent()得到继承,然后可以抓取items中得其他部分得内容了。 def parse_son(self, response): ...原创 2019-03-23 10:36:49 · 1690 阅读 · 0 评论 -
Scrapy中setting添加数据库mongode redis相关配置及参数详解
在练习scrapy爬虫的时候必不可少的会用到setting的相关配置,这里将setting中的各项配置信息做了注释。# -*- coding: utf-8 -*-# 系统自动生成的配置BOT_NAME = 'Spider'SPIDER_MODULES = ['Spider.spiders']NEWSPIDER_MODULE = 'Spider.spiders'# redis数据...原创 2019-03-23 19:28:15 · 449 阅读 · 0 评论 -
Scrapy盗墓笔记爬虫0.1版 保存到数据库mongode
这次的实例是用scrapy对盗墓笔记进行爬取,并且通过数据库mongode进行连接,这里对数据库的可视化工具为:Robo 3T 1.1.1环境: win10 py3.6 scrapy1.6编译器: pycharmmain.pyfrom scrapy import cmdlinecmdline.execute('scrapy crawl dmoz'.split())items.py#...原创 2019-03-20 08:30:25 · 329 阅读 · 0 评论 -
Scrapy爬虫 在pycharm下的基本使用
转载: https://blog.csdn.net/u012052268/article/details/72063917转载 2019-03-07 21:02:29 · 317 阅读 · 0 评论 -
Scrapy pycharm 爬取豆瓣排名前250信息
一些基础的scrapy创建 项目这里就不说了,这里粘贴一下源代码,留作以后方便查阅。(大佬勿喷)以下是项目的结构:由于这里只用到了items.py doubanspider.py main.py,其他的组件并没有用到,这里就不一一沾出了items.py# -*- coding: utf-8 -*-# Define here the models for your scraped it...原创 2019-03-10 16:45:18 · 1713 阅读 · 0 评论 -
python爬取极客学院课程信息实例
用过正则表达式和requests库来爬取极客学院课程的名称,课程简介,课程时长,课时数,上课人数。以下为python3编写的代码import requestsimport stringimport re# 代理头信息kv = {'user-agent':'Mozilla/5.0'}# 爬虫类,用来实现各种功能class spider(object): def __in...原创 2019-02-28 12:22:08 · 614 阅读 · 0 评论 -
python爬虫---XPath介绍
XPath是一门语言可以在XML文档中查找信息支持HTML通过元素和属性进行导航可以提取信息比正则表达式更厉害比正则表达式更简单安装lxml库from lxml import etreeSelector = etree.HTML(网页源代码)Selector.xpath(一段神奇的符号)...原创 2019-02-28 13:03:42 · 136 阅读 · 0 评论 -
XPath基本内容提取
XPath与HTML结构:树状结构获取网页元素的XPath:手动分析浏览器生成应用XPath提取内容://定位根节点/往下层寻找提取文本内容: /text()提取属性内容: /@xxxx...原创 2019-02-28 13:21:02 · 310 阅读 · 0 评论 -
XPath特殊情况
以相同字符开头:starts-with(@属性名称,属性名称相同部分)标签套标签的情况:string(.) 例:info = data.XPath('string(.)')原创 2019-02-28 13:31:00 · 186 阅读 · 0 评论 -
python极客学院 pycharm基本调试
以下是老师用一个简单的代码做的pycharm的基本调试、print('hello world')for i in range(10): a = i print(a)原创 2019-02-24 09:43:54 · 193 阅读 · 0 评论 -
python多进程(multiprocessing)(map)
map的基本使用:map函数一手包办了序列操作,参数传递和结果保存等一系列的操作。from multiprocessing.dummy import Poolpoop = Pool(4) # 4代表电脑是多少核的results = pool.map(爬取函数,网址列表)from multiprocessing.dummy import Pool as ThreadPool...原创 2019-02-28 13:59:50 · 10030 阅读 · 0 评论 -
python 极客学院 正则表达式
import researet_code = 'hadfalifexxIxxfasdjifja134xxlovexx23345sdfxxyouxx8dfse'# .的使用 相当于一个占位符# a = 'xy123'# b = re.findall('x..',a)# print(b)# *的使用 匹配无限次 如果不是单一的一个字符,则不会出现空的# a = 'xyxy123'...原创 2019-02-25 13:40:07 · 330 阅读 · 0 评论 -
python爬取网页所有课程图片实例
import reimport requests# 读取源代码文件f = open('source.txt','r')html = f.read()f.close()# 获取网页源代码(字符编码有问题)# r = requests.get('http://www.jikexueyuan.com/course/python/?pageNum=1')# html = str(r.t...原创 2019-02-25 19:56:13 · 266 阅读 · 0 评论 -
python第三方库安装技巧
少使用easy_install安装,因为它只能安装,不能卸载多用pip安装安装遇到问题的时候:http://www.lfd.uci.edu/~gohlke/pythonlibs/ (下载whl文件->whl改为zip->解压缩->另一个info文件夹没有用-> 将那个文件夹复制—>到python的lib文件夹下->粘贴->安装完成)..原创 2019-02-26 10:13:46 · 176 阅读 · 0 评论 -
python爬虫 获取网页源代码
import requests# 获取网页源代码kv = {'user-agent':'Mozilla/5.0'} # 请求头信息,相当于一个浏览器面具html = requests.get('http://tieba.baidu.com/f?ie=utf-8&kw=python&red_tag=g1015520224',headers=kv)print(ht...原创 2019-02-26 10:27:48 · 3107 阅读 · 0 评论 -
python爬取网站上所有诗句(第三版)
#-*-coding:utf8-*-import requestsimport re# 获取网页源代码kv = {'user-agent':'Mozilla/5.0'}url = 'http://www.shicimingju.com/shicimark/qixijie.html'html = requests.get(url, headers=kv)poem = re.fin...原创 2019-02-26 10:43:34 · 1012 阅读 · 0 评论 -
python表单提交 post方法
Get 得到数据Post 提交数据分析目标网站Requests表单提交功能异步加载技术,url不会改变:F12 networkshow morerequests method:post 提交数据form data page:2 page:3审核元素中的url: https://www.crowdfunder.com/browse/deals&template...原创 2019-02-26 12:31:32 · 4106 阅读 · 1 评论 -
利用XPath爬取百度贴吧指定内容
以下是利用XPath爬取百度贴吧上的回帖人 回贴信息 回贴时间的代码from lxml import etreefrom multiprocessing.dummy import Pool as ThreadPoolimport requestsimport stringimport jsondef towrite(contentdict): f.writelines('回...原创 2019-03-03 14:23:52 · 895 阅读 · 0 评论 -
Scrapy安装教程
pip install pywin32pip install zope.interfacepip install Twistedpip install pyOpenSSLpip install Scrapy原创 2019-03-06 20:25:41 · 1109 阅读 · 0 评论 -
Python fidder的简单实用
Fidder 对中间数据进行拷贝 然后再发送给服务器Winconfig->勾选IE->浏览IE->一点一拖看数据(选项卡定位到composer)原创 2019-03-04 19:42:14 · 323 阅读 · 0 评论 -
利用Cookies来保持登录的一个小实例
from lxml import etreeimport requests# 获取代码并且保持登录url = "https://weibo.cn/u/5370547595"Cookies = {"Cookies" : "WEIBOCN_WM=3349; SSOLoginState=1551701601; SCF=AiUmnsScenBfbDailMjYtqNNs8qfcgEECKxn1d...原创 2019-03-04 21:04:22 · 404 阅读 · 0 评论 -
想法
学到这里的话,现在已经可以做一些事情了可以将某人的qq空间的全部信息全部爬取还可以利用python的发送邮件的库来将说说信息实时发送到自己的qq邮箱中目前感觉这种爬虫没什么必要练习的话,可以爬取淘宝的商品信息和商品名称价格来练练手,熟悉一下学习到的内容...原创 2019-03-04 21:29:22 · 78 阅读 · 0 评论 -
python删除字符串两边的空格
import stringstring = ' How are you 'result = str.strip(string)print(result)代码环境 : py3.6原创 2019-02-27 20:44:33 · 15487 阅读 · 0 评论