鱼C论坛

 找回密码
 立即注册
查看: 2061|回复: 4

做爬虫的时候遇到了之前的方法解决不了的IP地址问题

[复制链接]
发表于 2017-11-15 21:32:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
rt
求各位大神帮忙看看
http://www.whatismyip.com.tw/
就是这个网址查到的IP不论我在请求头里面怎么改都没有用
在爬一个期刊的网站上的时候它就返回我这个IP被禁用
入门级小白 求指教~~

想爬的网站:http://pubsonline.informs.org/loi/mnsc


并无恶意 准备爬下来所有paper 的名称作者关键字摘要之类的做文字分析工作 还望各位不吝指教~

文中网站

文中网站

想爬的网站

想爬的网站
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-11-15 21:56:34 | 显示全部楼层
一些尝试: 一开始用的requests模块 不过发现它不太好加个代理池 而且我用下面这段代码并没有实现隐藏掉自己的IP 还是被blocked了
import requests
from bs4 import BeautifulSoup
import urllib
from collections import OrderedDict  
from pyexcel_xls import get_data  
from pyexcel_xls import save_data
import os
import random

def openAndclean_web(website_link):
    headers = {
    'Referer':'http://pubsonline.informs.org/toc/mnsc/63/11',
    'Host':'pubsonline.informs.org',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36',
    'Accept':'*/*'
    }

    proxies = {"https": "http://61.135.217.7:80" }   
    s = requests.session()
    s = BeautifulSoup(s.get(website_link,proxies=proxies,headers=headers).content, "lxml")
    return s
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-15 21:58:33 | 显示全部楼层
尝试不用requests模块 老玩家回归urllib.request(然而效果与上面一样 差强人意):

import urllib.request
import random
from bs4 import BeautifulSoup
url = 'http://pubsonline.informs.org/loi/mnsc'

iplist = ['59.40.51.125:8010']

proxy_support = urllib.request.ProxyHandler({'http':random.choice(iplist)})

opener = urllib.request.build_opener(proxy_support)
opener.addheaders = [('User-Agent', 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.65 Safari/537.36'),
                     ('Referer','http://pubsonline.informs.org/toc/mnsc/63/11'),
                     ('Host','pubsonline.informs.org'),
                     ('Accept','*/*')]

urllib.request.install_opener(opener)

response = urllib.request.urlopen(url)
html = response.read().decode('utf-8')
html= BeautifulSoup(html, "lxml")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-16 10:34:09 From FishC Mobile | 显示全部楼层
没人嘛
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-16 20:30:10 | 显示全部楼层
。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-28 17:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表