爬虫添加随机User—Agent(随机代理)

这篇博客介绍了如何在Python爬虫中简单快捷地添加随机User-Agent,避免被目标网站反扒。作者分享了一个方便的库,并给出了在爬虫代码中应用的示例,包括对Chrome、Firefox、Opera、Safari和IE浏览器User-Agent的支持。
摘要由CSDN通过智能技术生成

胖友那还在为添加随机用户代理,找出一大堆代理,然后random一下吗,哈哈哈
今天我发现一个好东西,分享出来,可能别人早就知道了,但是对我来说还是个新鲜玩意,哈哈
那就是fake-useragent

安装

pip install fake-useragent

在爬虫中添加代码

from fake_useragent import UserAgent

ua = UserAgent()
headers = {
   'User-Agent':ua.random}

知道更好

chrome
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1",
"Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11",
好的,以下是一个可以爬取京东商品信息并进行可视化的Python爬虫示例代码,其中包括了设置代理随机User-Agent的代码: ```python import requests from bs4 import BeautifulSoup import pandas as pd import matplotlib.pyplot as plt from fake_useragent import UserAgent url = "https://search.jd.com/Search?keyword=Python&enc=utf-8&wq=Python&pvid=74c9e6f6d2c14a4aaf3d2c3fb0c2b6b7" # 设置代理随机User-Agent proxies = { 'http': 'http://127.0.0.1:1080', 'https': 'http://127.0.0.1:1080' } headers = { 'user-agent': UserAgent().random } response = requests.get(url, headers=headers, proxies=proxies) soup = BeautifulSoup(response.text, "html.parser") product_list = [] for item in soup.select('li.gl-item'): p_name = item.select('.p-name em')[0].text.strip() p_price = item.select('.p-price i')[0].text.strip() product_list.append({'name': p_name, 'price': float(p_price)}) df = pd.DataFrame(product_list) df = df.drop_duplicates() # 去重 df = df.sort_values(by='price', ascending=False) # 按价格排序 # 可视化 plt.figure(figsize=(10, 8)) plt.bar(df['name'], df['price']) plt.xticks(rotation=90) plt.xlabel('商品名称') plt.ylabel('价格(元)') plt.title('京东Python商品价格分布') plt.show() ``` 该代码引入了fake_useragent库,用于生成随机User-Agent,可以有效避免被反爬虫机制识别。同时,设置了一个本地代理,可以使用代理IP来访问京东,增加爬取成功的几率。 需要注意的是,代理IP的获取和使用需要谨慎,不要使用不可靠的代理,否则可能会导致爬取失败或者被封禁。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值