Python爬虫入门【1】

爬虫基础

工具

anaconda + juypter
是的,就是这么简单粗暴,anaconda 去清华大学镜像站下载,速度max

抓取页面

目前用的是python自带的BeautifulSoup库,用来做入门很方便。scrapy是一个爬虫框架,后面再研究。
for example

from bs4 import BeautifulSoup
import requests

url = 'www.sohu.com'
headers={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36'}
html = requests.get(url, headers=headers)
soup = BeautifulSoup(html.content,'lxml')

soup 就是我们爬取的初始页面,里面包含整个页面的所有元素

定位元素

拿到整个页面后就需要定位到需要的元素,毕竟正常情况下只是需要其中的一部分内容。基本函数是:
find()返回第一个符合要求的标签
findAll()返回一个由所有符合要求的标签组成的列表。除此之外基本相同

1、通过标签
2、通过标签属性
3、通过标签+属性
还有更高级的通过正则匹配,目前还没用上
这几种定位方法是可以灵活组合的
for example

# 基础
soup_text = soup.find('div')
soup_text = soup.find(name = "actor_list")
# 组合
soup_text = soup.find('div', id = 'row grid').
soup_text = soup.find('div', class_='row grid').find_all('a')

获取内容

内容无非就那几种:文字、图片、链接。
for example

name = soup.find('a', class_='icon-only link icon-only back').find('h3').text

soup_text = soup.find('div', class_='row grid').find_all('a')
#     print(soup_text)
for links in soup_text:
    actor_url = links.get('href')
    actor_url_pool.append(actor_url)

imgs = soup.find('p', id='imgList').find_all('img')

to be continue

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值