python 贴吧小爬虫案例

python 贴吧小爬虫案例

#!/usr/bin/env python
#coding:utf-8

import urllib
import urllib2

def loadPage(url,filename):
“”"
作用:根据url发送请求,获取服务器响应文件
url: 需要爬取的url地址
filename:处理的文件名
“”"
print "正在下载 " + filename
headers = {“User-Agent”: “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11”}
request = urllib2.Request(url, headers=headers)
return urllib2.urlopen(request).read()

def writePage(html,filename):
“”"
作用: 将html内容写入到本地
html: 服务器相应文件内容
“”"
print "正在保存 " + filename
# 文件写入
with open(filename, “w”) as f:
f.write(html)
print “_” * 30

def tiebaSpider(url, beginPage, endPage):
“”"
作用:贴吧爬虫调度器,负责组合处理每个页面的url
url: 贴吧url的前部分
beginPage: 起始页
endPage: 结束页
“”"
for page in range(beginPage, endPage + 1):
pn = (page - 1) * 50
filename = “第” + str(page) + “页.html”
fullurl = url + “&pn=” + str(pn)
#print fullurl
html = loadPage(fullurl,filename)
#print html
writePage(html,filename)
print “谢谢使用”

if name == “main”:
kw = raw_input(“请输入需要爬取的贴吧名:”)
beginPage = int(raw_input(“请输入起始页:”))
endPage = int(raw_input(“请输入结束页:”))
url = "http://tieba.baidu.com/f?"
key = urllib.urlencode({“kw”: kw})
fullurl = url + key
tiebaSpider(fullurl, beginPage, endPage)

#python tieba.py
请输入需要爬取的贴吧名:python
请输入起始页:1
请输入结束页:4
正在下载 第1页.html
正在保存 第1页.html


谢谢使用
正在下载 第2页.html
正在保存 第2页.html


谢谢使用
正在下载 第3页.html
正在保存 第3页.html


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python的Selenium库是一个强大的工具,可以用于自动化网页操作和数据采集。下面是一个 Python的Selenium爬虫案例: 案例1:京东页面采集 首先,您需要安装Selenium库[2.1]。然后,您可以使用以下步骤编写Python脚本来实现京东页面的数据采集: 1. 导入必要的模块: from selenium import webdriver 2. 创建一个浏览器驱动实例,并打开京东的首页: driver = webdriver.Chrome() driver.get("https://www.jd.com/") 3. 定位并点击搜索框,并输入关键词: search_box = driver.find_element_by_id("key") search_box.send_keys("手机") search_box.submit() 4. 定位商品列表,并获取列表中的商品信息: product_list = driver.find_elements_by_class_name("gl-item") for product in product_list: # 获取商品名称 name = product.find_element_by_class_name("p-name").text # 获取商品价格 price = product.find_element_by_class_name("p-price").text # 打印商品信息 print("商品名称:", name) print("商品价格:", price) 5. 关闭浏览器: driver.quit() 这个案例演示了如何使用Selenium库来打开京东首页,搜索关键词并获取商品列表的名称和价格[2.2]。通过定位元素,您可以轻松地获取您所需的数据。 请注意,由于Selenium库是一个自动化工具,它的效率较低,因此适用于小规模的数据采集任务。 希望这个案例能为您提供一个基本的了解,您可以根据自己的需求进行相应的修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值