IP地址(英语:IP Address, 全称:Internet Protocol Address),又译为网际协议地址、互联网协议地址。当设备连接网络,设备将被分配一个IP地址,用作标识。通过IP地址,设备间可以互相通讯,如果没有IP地址,我们将无法知道哪个设备是发送方,无法知道哪个是接收方。IP地址有两个主要功能:标识设备或网络 和 寻址(英语:location addressing)。
常见的IP地址分为 IPv4 与 IPv6 两大类,IP地址由一串数字组成。IPv4 由十进制数字组成,并以点分隔,如:172.16.254.1 ; IPv6 由十六进制数字组成,以冒号分割,如:2001:db8:00:567:8:1
当我们连续访问一个网站的时候,可能会出现
这就表明我们当前所使用的IP地址已经被该网站暂时封了,需要等一段时间才能解封。
网站为了防止被爬取,会有反爬机制,对于同一个IP地址的大量同类型的访问,会封锁IP,过一段时间后,才能继续访问
等到网站自动解封
当然啦,我们不可能坐在电脑面前傻等,时间成本太高了,那么面对Ip被封有几种套路:
修改请求头,模拟浏览器(而不是代码去直接访问)去访问
user_agent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36'
headers = {'User-Agent': user_agent}
r = requests.get(url, headers = headers, timeout = 10)
from bs4 import BeautifulSoup
import requests
import re
imp