Python:基于Python爬虫技术的抢票程序及其实现

Python:基于Python爬虫技术的抢票程序及其实现,第1张

临近放假,相信我们每天都在群聊里或者朋友圈看到一些帮忙抢火车票的信息。看到朋友们抢回家的车票这么辛( bei )苦( can ),结合圈里一些前辈的指点,抱着学习的心态用 Python 做了一个简单的自动化抢票程序,抢到票之后通过绑定的邮箱(比如 QQ )发通知。下面分享主要内容:

然后,开始使劲地码:

1. 定义自动购票的类(初始化属性)

2. 实现登录功能

3. 实现购票功能

4. 邮箱通知付款

还有,网络不好或者 12306 的服务器不稳定的时候,就会卡住,针对这种情况,系统会重复查询:

最后,祝大家都能顺利抢到票.

本文以转载于博客园小帝君的博客

下面这个程序是抓取网页的一个例子,MyOpener类是为了模拟浏览器客户端,并采用随机选取的方式以防网站将你认为是机器人。

MyFunc函数抓取你指定的url,并提取了其中的href链接,图片的获取类似,一般是<img src=xxx>这样的形式,其他的功能应该也不难,去网上搜下应该有些例子。

import re

from urllib import FancyURLopener

from random import choice

user_agents = [

'Mozilla/5.0 (WindowsUWindows NT 5.1itrv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11',

'Opera/9.25 (Windows NT 5.1Uen)',

'Mozilla/4.0 (compatibleMSIE 6.0Windows NT 5.1SV1.NET CLR 1.1.4322.NET CLR 2.0.50727)',

'Mozilla/5.0 (compatibleKonqueror/3.5Linux) KHTML/3.5.5 (like Gecko) (Kubuntu)',

'Mozilla/5.0 (X11ULinux i686en-USrv:1.8.0.12) Gecko/20070731 Ubuntu/dapper-security Firefox/1.5.0.12',

'Lynx/2.8.5rel.1 libwww-FM/2.14 SSL-MM/1.4.1 GNUTLS/1.2.9'

]

class MyOpener(FancyURLopener, object):

version = choice(user_agents)

def MyFunc(url):

myopener = MyOpener()

s = myopener.open(url).read()

ss=s.replace("\n"," ")

urls=re.findall(r"<a.*?href=.*?<\/a>",ss,re.I)#寻找href链接

for i in urls:

do sth.

犯法。

python是一种跨平台的计算机程序设计语言,通过python抢购门票可能违反了演唱会主办方或售票平台的服务条款和使用协议,也可能会违反音乐版权和演唱会主办方的商标权等知识产权问题。

演唱会门票可以在官方网站上购买,官方网站是演唱会的官方发布平台。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12096246.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存