写了个小爬虫,为何用上代理ip总是出现错误。
import urllib.request
import re
import os
import random
import threading def url_open(url): #在第8到第12行,总是无法正常运行,代理Ip是从网上免费代理ip获取的。
#ips = ['117.136.234.12:80', '218.189.26.20:8080','202.194.101.150:80','180.166.112.47:8888'] #proxy = urllib.request.ProxyHandler({'http':random.choice(ips)})#{'http':'124.202.174.66:8118'}
#opener = urllib.request.build_opener(proxy)
#opener.addheaders = [('User-Agent','Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36')] #urllib.request.install_opener(opener) req = urllib.request.Request(url) req.add_header('User-Agent','Mozilla/5.0')
urlobject = urllib.request.urlopen(req)
response = urlobject.read()
return response def find_page(html):
s2 = r'\[\d{4}\]'
m = re.search(s2, html)
page = m.group()
print("find_page")
return page def find_page_link(html):
s = r'http://ww[0-9].sinaimg.cn/mw600/\w+.jpg'
m = re.findall(s, html)
return m def save_page(jpg):
for file in jpg:
data = url_open(file)
#print("wwwwwwwwww")
name = "E:\\作业\\j_d\\"+file.split('/')[-1]
with open(name, 'wb') as f:
f.write(data) def down_jpg(dir_name='E:\作业\j_d', page=10, pages=10):
#os.mkdir(dir_name)
os.chdir(dir_name)
#red = url_open('http://jandan.net/ooxx')
#print(type(red))
#red = red.decode('utf-8') #page = find_page(red)
#page = int(page[1:-1])
#page = 1333
for i in range(pages):
page += 1
url = 'http://jandan.net/ooxx/page-'+str(page)+'#comments'
print(url)
data = url_open(url)
data = data.decode('utf-8')
print("dddddddddddddd")
page_list = find_page_link(data)
#print("sssssssssssssss")
save_page(page_list) if __name__ == '__main__':
p = threading.Thread(target=down_jpg,args=('E:\作业\j_d',1555,10))
c = threading.Thread(target=down_jpg,args=('E:\作业\j_d',1024,10))
#down_jpg()
p.start()
c.start() p.join()
c.join()
写了个小爬虫,为何用上代理ip总是出现错误。的更多相关文章
- 爬虫反爬之代理IP
爬虫反爬之代理IP 代理IP其实本就是在requests模块中的参数 定义: 代替原来的IP地址去对接网络的IP地址. 作用: 隐藏自身真实IP,避免被封. 获取代理IP网站 西刺代理.快代理.全网代 ...
- 网络爬虫一定要用代理IP吗
数据采集现在已经成为大数据时代不可以缺少的一部分,在数据采集过程中,很多人都会用到代理ip,那么网络爬虫一定要用代理IP吗?答案虽然不是肯定的,但出现以下情况一定是需要用到代理IP的.1.在爬虫的时候 ...
- C#多线程爬虫抓取免费代理IP
这里用到一个HTML解析辅助类:HtmlAgilityPack,如果没有网上找一个增加到库里,这个插件有很多版本,如果你开发环境是使用VS2005就2.0的类库,VS2010就使用4.0,以此类推.. ...
- python基础学习1-网络爬虫程序中的代理IP设置
#!/usr/bin/env python # -*- coding:utf-8 -*-网络爬虫代理 import urllib.request import random url="htt ...
- 简单爬虫-爬取免费代理ip
环境:python3.6 主要用到模块:requests,PyQuery 代码比较简单,不做过多解释了 #!usr/bin/python # -*- coding: utf-8 -*- import ...
- PHP简单爬虫 爬取免费代理ip 一万条
目标站:http://www.xicidaili.com/ 代码: <?php require 'lib/phpQuery.php'; require 'lib/QueryList.php'; ...
- vb.net 多线程爬虫抓取免费代理IP
Class Program Public Shared masterPorxyList As List(Of proxy) = New List(Of proxy)() Public Class pr ...
- 用Python写一个小爬虫吧!
学习了一段时间的web前端,感觉有点看不清前进的方向,于是就写了一个小爬虫,爬了51job上前端相关的岗位,看看招聘方对技术方面的需求,再有针对性的学习. 我在此之前接触过Python,也写过一些小脚 ...
- nodejs http小爬虫
本课程用nodejs写一个http小爬虫,首先科普一下,爬虫就是把网上的网页代码给弄下来,然后纳为己用.目前最大的爬虫:百度快照等的. 下面直接上代码 示例一: var http = require( ...
随机推荐
- 转载:C# Office 开发
原文地址:http://blog.sina.com.cn/s/blog_604fb7ae0100x2s7.html 中小企业办公自动化系统都需要有与微软办公软件连接的功能,如把数据导入到电子表格.Wo ...
- DooDigestAuth php(后台)授权管理类 web浏览器授权
<?php /** * DooDigestAuth class file. * * @author Leng Sheng Hong <darkredz@gmail.com> * @l ...
- git https连接方式,记住密码
Git使用https方式进行连接时,默认每次推送时都要输入用户名和密码. 可以使用命令 $git config credential.helper store 为当前仓库设置记住密码,设置后,只要在推 ...
- Rectangles
Given two rectangles and the coordinates of two points on the diagonals of each rectangle,you have t ...
- java 多线程学习(一)
public class ThreadA extends Thread { ; public ThreadA() { super("ThreadID:" + (++threadID ...
- OC语法3——点语法,self关键字
点语法: 为了给程序员提供便捷,OC中也引入了点语法.不过它和Java中点语法的意义是完全不同的. 在Java中无论调用任何方法,还是访问public类型的成员变量都是用点语法(.号). 而在OC ...
- PHP中cURL错误号对照[转]
PHP cURL curl_errno 在php程序编写中,使用curl函数库的几率还是挺高的,如curl_init().curl_setopt().curl_exec().curl_errno()等 ...
- ecside入门
ECSide是有一个基于jsp tag的开源列表组件. 简单的说,它就是一组可以帮助你快速实现强大的列表的jsp标签. 它的工作原理很简单. 您将要展现的列表的数据集合(Collection),放入r ...
- 用CSS3绘制图形
参考资料:http://blog.csdn.net/fense_520/article/details/37892507 本文非转载,为个人原创,转载请先联系博主,谢谢~ 准备: <!DOCTY ...
- android开源框架和开源项目(转)
特效: http://www.androidviews.net/ http://www.theultimateandroidlibrary.com/ 常用效果: 1. https://github.c ...