温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python做爬虫的小技巧

发布时间:2020-08-14 12:05:45 来源:亿速云 阅读:145 作者:小新 栏目:编程语言

小编给大家分享一下python做爬虫的小技巧,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

整体思路流程

通过URL获取说要爬取的页面的响应信息(Requests库的使用)
通过python中的解析库来对response进行结构化解析(BeautifulSoup库的使用)
通过对解析库的使用和对所需要的信息的定位从response中获取需要的数据(selecter和xpath的使用)
将数据组织成一定的格式进行保存(MongoDB的使用)
通过对数据库中的数据进行筛选和组织,进行数据可视化的初步展示(HighCharts库的使用)

简单代码演示

 准备工作

下载并安装所需要的python库,包括:

requests库:用于向指定url发起请求
BeautifulSoup库:用于解析返回的网页信息
lxml库:用于解析网页返回结果
pymongo库:用于实现python对MongoDB的操作

 对所需要的网页进行请求并解析返回的数据

对于想要做一个简单的爬虫而言,这一步其实很简单,主要是通过requests库来进行请求,然后对返回的数据进行一个解析,解析之后通过对于元素的定位和选择来获取所需要的数据元素,进而获取到数据的一个过程。

以上就是一个简单的网页爬虫的制作过程,我们可以通过定义不同的爬虫来实现爬取不同页面的信息,并通过程序的控制来实现一个自动化爬虫。

以下是一个爬虫的实例

import requests
from bs4 import BeautifulSoup

start_url = 'http://bj.58.com/sale.shtml'
url_host = 'http://bj.58.com'
#定义一个爬虫函数来获取二手市场页面中的全部大类页面的连接
def get_channel_urls(url):
    #使用Requests库来进行一次请求
    web_data = requests.get(url)
    #使用BeautifulSoup对获取到的页面进行解析
    soup = BeautifulSoup(web_data.text, 'lxml')
    #根据页面内的定位信息获取到全部大类所对应的连接
    urls = soup.select('ul.ym-submnu > li > b > a')
    #作这两行处理是因为有的标签有链接,但是却是空内容
    for link in urls:
        if link.text.isspace():
            continue
        else:
            page_url = url_host + link.get('href')
            print(page_url)

看完了这篇文章,相信你对python做爬虫的小技巧有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI