Python网络爬虫爬取携程网中的游记标题及内容

最近在自学Python爬虫,会自己练习一些网站然后记录下来供大家参考,如有不对之处希望大佬多多指正

此处以爬取携程网上带有“非遗”关键词的游记为例:

首先找到需要爬取的网站的url:https://you.ctrip.com/searchsite/travels/?query=%e9%9d%9e%e9%81%97&isAnswered=&isRecommended=&publishDate=&PageNo=1

可以发现不同页码转换时只改变最后的数字,这样我们爬取不同页面时就非常方便了

利用requests库和BeautifulSoup库对页面的html进行抓取

def getHTMLText(url):
    try:
        r = requests.get(url)
        r.raise_for_status()
        r.encoding = 'utf-8'
        return r.text
    except:
        return""

通过对页面html的观察我们发现标题内容存在<dt>标签下,于是进行遍历

for items in soup.select('dt'):
        if items.a != None:
            print(items.a.text, file=data)

再寻找每个标题下对应的具体内容的href

nxt = 'https://you.ctrip.com' + items.a['href']
            html2 = getHTMLText(nxt)

同理可以爬取具体内容

完整代码已上传GitHub

ps:第一次发csdn可能写得不太好(doge)

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值