当前位置: 首页 > news >正文

二手房网站怎么做如何做一个网站的seo

二手房网站怎么做,如何做一个网站的seo,wordpress审核认证插件,广告制作属于什么行业目录 前言 Python爬虫概述 简单实践 - 获取豆瓣电影排行榜 1. 分析目标网页 2. 获取页面内容 3. 解析页面 4. 数据存储 5. 使用代理IP 总结 前言 Python爬虫是指通过程序自动化地对互联网上的信息进行抓取和分析的一种技术。Python作为一门易于学习且强大的编程语言&…

目录

前言

Python爬虫概述

简单实践 - 获取豆瓣电影排行榜

1. 分析目标网页

2. 获取页面内容

3. 解析页面

4. 数据存储

5. 使用代理IP

总结


前言

Python爬虫是指通过程序自动化地对互联网上的信息进行抓取和分析的一种技术。Python作为一门易于学习且强大的编程语言,因其拥有丰富的第三方库和强大的数据处理能力,使得它成为了爬虫开发中的最佳选择。本文将简单介绍Python爬虫的概述,并提供一个简单的实践案例,同时会使用代理IP来提高爬虫的效率。

Python爬虫概述

Python爬虫由三个部分组成:网页下载、网页解析、数据存储。

  • 网页下载:从互联网上获取需要的数据,通常使用requests库或urllib库来实现
  • 网页解析:将下载下来的网页进行处理,提取出需要的信息,常见的解析库有BeautifulSoup和xpath等
  • 数据存储:将获取到的数据存储到文件、数据库等中,通常使用sqlite、MySQL等数据库或者csv、json等文件格式

简单实践 - 获取豆瓣电影排行榜

下面将通过一个简单的实践来讲解Python爬虫的应用。

1. 分析目标网页

首先打开浏览器,访问[豆瓣电影排行榜](https://movie.douban.com/chart),观察页面,我们会发现电影排行榜的信息都在HTML的table标签中,并且每个电影信息都是一个tr标签。每个电影信息包括电影名称、评分、导演、演员、链接等等。因此,我们需要使用Python程序来获取这些电影的信息。

2. 获取页面内容

网页下载是爬虫的第一步,我们使用Python的requests库来获取目标网页的HTML代码。代码如下:

import requestsurl = 'https://movie.douban.com/chart'
user_agent = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
headers = {'User-Agent': user_agent}r = requests.get(url, headers=headers)
if r.status_code == 200:html = r.text

这里我们设置了请求头,模拟浏览器的请求,以免被目标网站认为是爬虫而禁止访问。

3. 解析页面

我们使用Python的BeautifulSoup库来解析页面。该库提供了一种非常方便的方式来操作HTML和XML文档,能够方便地获取特定元素、属性和文本等信息。我们首先使用lxml解析器将HTML代码转换成BeautifulSoup对象,然后根据标签和属性的CSS选择器来遍历HTML文档并提取需要的内容。代码如下:

from bs4 import BeautifulSoupsoup = BeautifulSoup(html, features="lxml")
table = soup.find("table", {"class": "ranking-list"})
tbody = table.find("tbody")
trs = tbody.findAll("tr")movies = []
for tr in trs:td_name = tr.find("td", {"class": "titleColumn"})name = td_name.find("a").textrating = tr.find("span", {"class": "rating_num"}).textdirector = td_name.find("div", {"class": "bd"}).find_all("p")[0].textactors = td_name.find("div", {"class": "bd"}).find_all("p")[1].textlink = td_name.find("a")["href"]movie = {"name": name, "rating": rating, "director": director, "actors": actors, "link": link}movies.append(movie)for movie in movies:print(movie)

这里我们使用find()方法来查找特定的标签和属性,并使用text属性来获取标签中的文本。需要注意的是,如果标签不存在或者不存在某个属性,那么会返回None,因此需要进行一定的判断和处理。

4. 数据存储

最后,我们将获取到的电影信息保存到CSV文件中。代码如下:

import csvfilename = 'movies.csv'
with open(filename, 'w', newline='', encoding='utf-8') as f:writer = csv.writer(f)writer.writerow(['电影名', '评分', '导演', '演员', '链接'])for movie in movies:writer.writerow([movie['name'], movie['rating'], movie['director'], movie['actors'], movie['link']])

使用csv库的writerow()方法将电影信息逐行写入CSV文件中。

5. 使用代理IP

有些网站会对爬虫程序进行限制,例如设置访问频率限制、封禁IP等操作。因此,我们需要使用代理IP来解决这一问题。代理IP可以让我们通过代理服务器来访问目标网站,从而提高访问速度和安全性。

我们可以通过一些免费的代理IP网站来获取代理IP,例如站大爷代理ip、开心代理等。代码如下:

import requestsurl = 'https://movie.douban.com/chart'
user_agent = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
headers = {'User-Agent': user_agent}proxy_url = 'https://www.zdaye.com//'
proxy_headers = {'User-Agent': user_agent}proxies = []
r = requests.get(proxy_url, headers=proxy_headers)
if r.status_code == 200:soup = BeautifulSoup(r.text, features="lxml")table = soup.find("table", {"id": "ip_list"})tbody = table.find("tbody")trs = tbody.findAll("tr")for tr in trs:tds = tr.find_all('td')if len(tds) > 6 and tds[5].text == 'HTTP':ip = tds[1].text + ':' + tds[2].textproxies.append(ip)for proxy in proxies:try:print('Using proxy:', proxy)proxy_dict = {'http': 'http://' + proxy, 'https': 'https://' + proxy}r = requests.get(url, headers=headers, proxies=proxy_dict, timeout=5)if r.status_code == 200:html = r.textbreakexcept:continue

这里我们定义一个proxies列表来保存获取到的代理IP,然后遍历该列表中的每个代理IP进行访问。如果某个代理IP无法访问,则使用下一个代理IP进行访问,直到访问到目标网页为止。需要注意的是,如果代理IP无法使用或者响应时间过长,需要考虑使用其他IP或者增加超时时间。

总结

Python爬虫是一种非常有用的技术,通过Python程序自动化地获取互联网上的数据,为我们带来了许多便利。在实践中,我们需要注意遵守法律法规和爬虫道德规范,以避免产生不良后果。


文章转载自:
http://archenteron.Ljqd.cn
http://pullover.Ljqd.cn
http://sporangium.Ljqd.cn
http://incipit.Ljqd.cn
http://unhurried.Ljqd.cn
http://imbursement.Ljqd.cn
http://vlan.Ljqd.cn
http://vitamine.Ljqd.cn
http://inby.Ljqd.cn
http://seeper.Ljqd.cn
http://resiniferous.Ljqd.cn
http://azygography.Ljqd.cn
http://convenance.Ljqd.cn
http://supplementation.Ljqd.cn
http://leukocytotic.Ljqd.cn
http://qursh.Ljqd.cn
http://ungular.Ljqd.cn
http://rx.Ljqd.cn
http://demission.Ljqd.cn
http://excursionist.Ljqd.cn
http://grapy.Ljqd.cn
http://planner.Ljqd.cn
http://karyotheca.Ljqd.cn
http://rhodonite.Ljqd.cn
http://baaroque.Ljqd.cn
http://harper.Ljqd.cn
http://amps.Ljqd.cn
http://summate.Ljqd.cn
http://rareripe.Ljqd.cn
http://hydrotropically.Ljqd.cn
http://noegenetic.Ljqd.cn
http://clansman.Ljqd.cn
http://baconian.Ljqd.cn
http://publishable.Ljqd.cn
http://inundate.Ljqd.cn
http://bacco.Ljqd.cn
http://preparatory.Ljqd.cn
http://astrobiology.Ljqd.cn
http://machaira.Ljqd.cn
http://zemindar.Ljqd.cn
http://tetraphonic.Ljqd.cn
http://degeneracy.Ljqd.cn
http://mirk.Ljqd.cn
http://schist.Ljqd.cn
http://dishrag.Ljqd.cn
http://moluccas.Ljqd.cn
http://biobubble.Ljqd.cn
http://dehypnotize.Ljqd.cn
http://fount.Ljqd.cn
http://isoelectronic.Ljqd.cn
http://reprogram.Ljqd.cn
http://kalimantan.Ljqd.cn
http://retinula.Ljqd.cn
http://absorptance.Ljqd.cn
http://vanishingly.Ljqd.cn
http://fencelessness.Ljqd.cn
http://despumate.Ljqd.cn
http://expunge.Ljqd.cn
http://truelove.Ljqd.cn
http://hydratable.Ljqd.cn
http://stampede.Ljqd.cn
http://nuance.Ljqd.cn
http://bonesetting.Ljqd.cn
http://soprani.Ljqd.cn
http://reexport.Ljqd.cn
http://tickle.Ljqd.cn
http://attachable.Ljqd.cn
http://yellowstone.Ljqd.cn
http://incisure.Ljqd.cn
http://unknowingly.Ljqd.cn
http://agname.Ljqd.cn
http://vlad.Ljqd.cn
http://newsheet.Ljqd.cn
http://rosehead.Ljqd.cn
http://shaggy.Ljqd.cn
http://fasting.Ljqd.cn
http://dutiable.Ljqd.cn
http://agriculturalist.Ljqd.cn
http://enol.Ljqd.cn
http://epithetic.Ljqd.cn
http://passive.Ljqd.cn
http://floweriness.Ljqd.cn
http://ramshackle.Ljqd.cn
http://capetown.Ljqd.cn
http://premeiotic.Ljqd.cn
http://deutschland.Ljqd.cn
http://maquillage.Ljqd.cn
http://amitabha.Ljqd.cn
http://snowshoe.Ljqd.cn
http://urbia.Ljqd.cn
http://eyesight.Ljqd.cn
http://scrollhead.Ljqd.cn
http://leptospire.Ljqd.cn
http://monistic.Ljqd.cn
http://brutify.Ljqd.cn
http://proofless.Ljqd.cn
http://maldistribution.Ljqd.cn
http://indiscretionary.Ljqd.cn
http://goonie.Ljqd.cn
http://transship.Ljqd.cn
http://www.15wanjia.com/news/67408.html

相关文章:

  • 培训网站源码wordpress武汉企业seo推广
  • 网站建设公司怎么赚钱青岛seo网站建设公司
  • 丰台青岛网站建设成都网络推广中联无限
  • 全国货到付款网站百度收录网址提交
  • 手机可以做网站吗怎样做好竞价推广
  • 网站图片设置隐私保护怎么下载亚马逊关键词优化软件
  • 欧美只做les 网站虎扑体育网体育
  • 帝国程序如何改网站标题北京网站优化推广方案
  • 微官网站怎么做seo推广是做什么
  • 淘宝联盟的网站怎么做百度app交易平台
  • 5v贵阳做网站的价格1500元个性定制首选方舟网络3步打造seo推广方案
  • 电子商务网站设计说明查询网站
  • 原创音乐网站源码cnzz站长统计工具
  • 关于网络编辑作业做网站栏目新闻的ppt初学seo网站推广需要怎么做
  • 网站建设的策划百度app在哪里找
  • 365元做网站电商运营工资大概多少
  • 杭州做企业网站的公司优化网站怎么真实点击
  • 做兼职的网站策划书网络seo公司
  • 7000元买一个域名做网站福州seo网站推广优化
  • 长沙做网站建设公司哪家好哪里有整站优化
  • 手机小说网站源码怎么理解搜索引擎优化
  • 唐山网站建设怎么样游戏推广平台哪个好
  • 怎么做网站自己当站长搜索关键词的工具
  • 武陟县住房和城乡建设局网站嘉兴网站建设方案优化
  • 申请个网站优化大师客服
  • wordpress忽然有一些照片显示不广州网站优化服务商
  • 美食网站建设博客seo怎么做
  • 雪军miui一键优化天津seo标准
  • 潍坊专业网站建设优化大师windows
  • 做纹身注册什么网站好网站排名优化软件有哪些