# threading.Thread(target=loop,args=(i),).start() # threading.Thread(target=loop,args=((i)*3+ 1),).start() # threading.Thread(target=loop,args=((i+1)*3+1,)).start() # threading.Thread(target =loop,args=((i+2)*3+1),).start() # threading.Thread(target=loop,args=((i+3)*3+1),).start() # threading.Thread(target=loop,args=((i+4)*3+1),).start() # threading.Thread(target=loop,args=((i+5 )*3+1),).start() # threading.Thread(target=loop,args=((i+6)*3+1),).start() print("成功") 本来想实现多线程的,
html = requests.get(url, headers=headers) #没错,就是这么简单 urllib2以我爬取淘宝的妹子例子来说明: ? user_agent} # 注意:form data请求参数 params = 'q&viewFlag=A&sortType=default&searchStyle=&searchRegion=city%3A 就说明匹配了五个分组 3) 正则表达式中,“.”的作用是匹配除“\n”以外的任何字符,也就是说,它是在一行中进行匹配。这里的“行”是以“\n”进行区分的。 3.保存数据 数据解析后可以保存到文件或数据库中,这个例子是保存到了文件中,很简单,就不做说明了,在下篇讲如何将数据保存到数据库 def down_image(url, filename, realName
本来呢,一开始想爬取的是这个网站,http://www.mzitu.com/,但是呢?问题发现比较多,所以先爬取了http://www.meizitu.com/这个网站,下一步再去爬取第一个。 Gi
这里也差不多,用python写了个小爬虫,爬妹子图的"照片".感觉效率好慢,应该是代码的问题, 在此献丑了!!! PWD="/jiaoben/python/meizitu/pic/" for x in range(1,4): site = "http://www.meizitu.com/a/qingchun_3_ fd.write(chunk) print ("You have download %d photos" %PhotoName) #在放一个以前用shell写的下载煎蛋妹子图片的代码吧 页码自己嵌套一个for 就可以下载多点妹子图了~懒得弄了! #! " page #photo=`curl -A $"BROWSER" -m 10 -e $SOURCE_WEBSITE $WEBSITE |awk -F"://" '/.jpg/ {print $3}
3、HTTP协议内容 3.1 URL篇 http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web 状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值: 1xx:指示信息--表示请求已接收,继续处理 2xx:成功--表示请求已被成功接收、理解、接受 3xx:重定向--要完成请求必须进行更进一步的操作
然后我为了省事,我直接告诉妹子,你直接 git add -A 就行,换句话说,我们把这两个文件都纳入到管理中。此时如果再执行 git status,可以看到两个文件变绿色了。 ? 我分别用两次commit,创建了 3.txt 和 4.txt。 ? 然后看下版本记录: ? 现在我们回滚到上一个版本: ? 可以看到添加 4.txt 文件消失了: ?
春节到了,老板都回去过新年了,咱们打工人也忙了一年了,这几天就抓点妹子图,摸摸鱼吧。 导入模块 首先把用到的模块贴进来。
Round 3:我这次不要1-9乘法口诀表,我1-5,4-9,1-8,1-7,2-6,3-7,5-7……各要一个,哈哈,崩溃了吧!!
因为妹子学编程的意愿不强了,我也不能逼迫她去学。不过后来收到部分人的私信说希望继续更新下去,所以紧接上文继续萌妹子Python入门指北(一)。 比如我先算 3+4然后再乘以5,这里你可以使用小括号(),注意,你只能用小括号,但是可以用多层小括号,举个栗子。 对于不懂编程的人来说,用除号的生活有一些诡异的地方,比如你计算 3/2 你得到的结果可能是1,明显是错的吗!! 字符串只能加字符串和字符串乘以整数 3. 2*c+31*2 print (x+y+z)*3 预告,下篇文章开始讲python的循环和判断,然后我们就可以写一些比较萌萌哒的东西了!!
a = 5 b = 3 if a > b: print a else if a == b: print "a==b" else: print b 让我来翻译成中文,然后你就会发现很容易理解 a等于5 b等于3 如果 a 大于 b: 输出 a 或者 a和b相等: 输出 a==b 否则: 输出 b 其中if和else之间可以加多个else if语句,如果代码执行到这一个判断
我这里抛出一个简单的问题————输入1-9里面所有能被3整除的数!如果你程序写对了,很明显只会在屏幕上输出 3 6 9这3个数字。当然,这是后话,我们先来看看怎么写代码实现这个功能吧! 首先程序如何判断一个数能否被3整除,还记得整除的概念吗? 就是除完后没有余数(更确切的说是余数为0),在第二篇文章中我们已经介绍过一个求余数的运算符号了 %,只要n%3==0,那么n肯定是可以被3整除的,代码如下。 if n%3 == 0: #如果n除以3余数是0 print n #那么输出n 接下来我们需要做的就是把n从1循环到9了,还记得循环的语法是什么样的吗? 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
《萌妹子Python入门指导》系列,以下简称萌妹子系列是教没有任何编程基础的妹子如何去写python代码,最终实现一些小工具的开发,请Python大牛们直接绕道。 常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写 首先我要做的就是下载python的安装包,这里主要以windows的为例,因为本人的萌妹子用的是windows系统。 至于选择哪个版本,我建议选择2.7版本,因为目前好多模块对3.5版本的支持并不是很好,而且python 3.X并不是完全向下兼容的。虽然新的版本肯定代表着未来,但对于初学者还是建议选2.7。 其实3x和2x对于初学者来说差别不是很大。
PhantomJS了,因为chrome和firefox自带了headless的访问,然后就去各个blog看,最后爬下了这个网站: 1 import unittest 2 import requests 3 ) 补上多线程的代码 核心代码: 1 def test_multiscraping(self): 2 p = Pool()#默认大小是cpu的核数,你可以修改比如说双核Pool(2) 3
1 # -*- conding=utf-8 -*- 2 3 import requests 4 from bs4 import BeautifulSoup 5 import io 6 获取图片的地址 16 for i in range(1,10): 17 #herf 为访问的地址 18 herf = url +'/'+ str(i) 19 #在次解析新的url(这个url就是妹子的连接 html = requests.get(herf,headers=headers) 21 beautiful = BeautifulSoup(html.text,'lxml') 22 #获取妹子的图片连接
3.修电脑行规第二条:找你修电脑的人从没做错过什么 一路上时间过得很快。 因为在你的脑海里面已经想过了所有可能出现的故障原因。 你来到了姑娘住的地方。 她很开心,你一进屋就给你泡了一杯茶。
就像好脾气的妹子,和什么样的人都能聊得来,大家都喜欢她;脾气不大好的妹子,只能和一部分人聊得来,只愿意和一部分人交朋友,为什么? 3,扩展性 = 有所为、有所不为 最后再看一下“扩展性”。 复用性好的代码,往往功能是单一的、确定的,其方法往往只干一件事,其模块往往只集中负责一个业务功能,并且是独占负责,不允许其它模块是搅和。 变量 举 3 个例子 示例 1 // bad code const yyyymmdstr = moment().format('YYYY/MM/DD'); 破坏了可读性 // better code 示例 3 // bad code // 全局变量被一个函数引用 // 现在这个变量从字符串变成了数组,如果有其他的函数引用,会发生无法预见的错误。 就像一个易相处的妹子,每次和她相处,都不会留下社交阴影,即副作用;反之,如果每次和妹子相处,她都发些小脾气,产生一些副作用,也就称不上易相处了。这种情况在代码中就是复用性差。
最近看到知乎上有人提问:程序员如何追妹子。接着看就知道楼主就是个程序员,看上心仪的妹子了,来征求大家的意见。 看到大家积极回复,不免感慨:“世上还是好人多!”此处省略几个字。 不少人都是来看热闹的,也有提供专业意见的,最受欢迎的就是下面的回答: 1.早晚问好,发什么都赞,不要点赞要搭讪直接夸 2.没话题的时候多讲讲自己,慢慢她也会让你了解她 3.多打电话约见面,少发消息 4. 我觉得最靠谱的追妹子的方法就是: 1.真心 真心的对她好,以实际行动来打动她。 2.自信 无论自己长得多丑,多没钱,都要自信。 3.大方 无论言行举止,还是请客吃饭,都要大方得体。 4.安全感 妹子如果说跟你在一块有安全感,那么你九成已经成功了。 5.实际行动 例如: 她没时间吃饭的时候给她带饭; 生病的时候帮她拿药; 她的电脑出问题的时候能给她修好; 适当的时候知道给她买花(说实话,妹子最喜欢花了) ?
3、用大图地址下载该图片 这个很简单,看代码 先安装 Requests 和 BeautifulSoup 库 pip install requests bs4 导入库 import requestsfrom bs4 import BeautifulSoupimport sys 请求获取网页源代码 url = "https://divnil.com/wallpaper/iphone8/%E3%82%A2%E3% 83%8B%E3%83%A1%E3%81%AE%E5%A3%81%E7%B4%99_2.html" headers = { "User-Agent": "Mozilla/5.0 (X11; Linux class Divnil: def __init__(self): self.url = "https://divnil.com/wallpaper/iphone8/%E3% 82%A2%E3%83%8B%E3%83%A1%E3%81%AE%E5%A3%81%E7%B4%99.html" self.head = "https://divnil.com/wallpaper
最近突然发现之前写的妹子图的爬虫不能用了,估计是网站又加了新的反爬虫机制,本着追求真理的精神我只好又来爬一遍了! 效果 ? 文件夹 ? 妹子图 思路整理 页面地址:http://www.meizitu.com/ 获取首页分类标签地址,传入下一步 ? soup.select('body span a') return channel ##获取分类地址 保存图片 这里需要注意的是保存图片的时候需要加上header,应该是网站更新了验证,去年爬妹子图直接保存就可以的 channel_title = (channel.get('title')) print '***开始查找 '+channel_title.encode('utf-8') +' 分类下的妹子图
本文授权转载自公众号:zone7 目录 前言 Media Pipeline 启用Media Pipeline 使用 ImgPipeline 抓取妹子图 瞎比比与送书后话 前言 我们在抓取数据的过程中,除了要抓取文本数据之外 抓取妹子图 ok,理论部分也讲完了,那我们来实践一下吧 spider spider 部分很简单,如下: class GirlSpider(scrapy.spiders.Spider): name