python能做什么(利用Python程序赚钱的思路)

qinzhiqiang 04-16 15:21 833次浏览

俗话说,思路决定出路,作为一个程序员,一定要敢想敢做。

给阿基米德一个杠杆他可以撬动地球,给你一门开发语言,你能否撬动钱包?

一般来说作为程序员收入大概有以下几种方式:

1、最基本的肯定就是基本工资收入了

2、稍微前进一点的从各种兼职平台接取外包,来获取额外收入

3、再稍微前进一点就自己开个淘宝店接取外包

4、再再前进一点就开发自己软件,卖软件或者提供服务赚钱。当然3和4可以结合起来

5、当然如果你的算法可以有基本的金融知识,现在可以去做数字货币量化,进行套利。

以上能证明,作为程序员其实不要把自己限定太过于死板,当然还有更多的其他思路,靠大家发挥想象力了。

今天我给大家分享的是自己实践过的一种赚钱方法:都闪开!我要加黑加粗重点了!

《CSGO饰品扫货赚钱攻略》

一、背景介绍

不知道大家玩过CSGO这款游戏没有(其实我没有玩过),俗话说有游戏的地方就有江湖,有江湖的地方就有买卖。

在这些买卖当中其中一种是:游戏物品商人,手动倒买倒卖游戏物品,从而赚取差价收入。

交易平台:

1、国内比较大的CSGO饰品交易平台有C5GAME和IGXE(声明绝对不是打广告)

2、国外肯定是官方的Steam以及亲儿子opskins了

二、思路介绍

1、同一件商品,国内国外价格有差异,一般国内平台比国外便宜

2、我们实时抓取国外的价格,与国内平台进行比较,如果国内平台价格比国内便宜一定的程度(这个程度根据自己需要可以程序实现的时候进行配置),那么就在国内的平台把商品买下来。

看吧,思路是不是挺简单,会爬虫的童鞋肯定蹭蹭蹭地,整装待发,要去写程序实现了。

先别慌,还没说完。先问几个问题Q&A:

1、买来的有差价的饰品我们卖给谁,放国外平台卖?

如果说通过steam中转放国外平台卖,那就不划算了。

因为国外平台收取非常高的佣金,比如卖100块收你10块或20块,那不亏哭。

解决方案:

可以联系批量收饰品的第三方平台或者个人,批量卖给对方,及时收回货款,或者按照对方的需求程序针对性的进行扫货,笔者便是这样做的。

2、现在steam针对CSGO有7天交易限制了,怎么办?

凉拌。

哈哈,凉拌是不可能的,这辈子都是不可能凉拌的。

解决方案:

你可以扫其他的游戏物品,比如绝地求生,H1Z1这些,都是类似的。

3、这可是python相关的,说了这么多,咋还没看到一个字儿的代码?

容我喝口水,娓娓道来。

三、程序实现

1、首先,我们通过爬虫程序获取opskins所有CSGO饰品的商品名称和价格。

干货之如何利用Python程序赚钱

返回结果如下,包含销量和价格:

干货之如何利用Python程序赚钱

2、模拟登录C5GAME

    def login(self,username,password,captcha):        res = {"s": 0, "m": "fail"}        url="https://www.c5game.com/api/login.json"        headers={         "Origin": "https://www.c5game.com",         "Accept-Language": "zh-CN,zh;q=0.9",         "Accept-Encoding": "gzip,deflate,br",         "Accept": "application/json,text/javascript,*/*;q=0.01",         "User-Agent": "Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/62.0.3202.62Safari/537.36",         "Host": "www.c5game.com",         "X-Requested-With": "XMLHttpRequest",         "Referer": "https://www.c5game.com/csgo/item/index.html?item_id=202853129&type=S",         "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8"        }        post_data={         "LoginForm[username]": username,         "LoginForm[password]": password,         "LoginForm[verify]": captcha,         "LoginForm[rememberMe]": "1"        }        response=self.session.post(url,headers=headers,data=post_data)        if response.json().get("status")==200:            res["s"]=1            res["m"]=u"登录c5game成功"        res["m"]=response.json().get("message")        return res

登录成功

3、根据商品名称在C5GAME进行搜索

    def query(self,keyword):        res = {"s": 0, "m": "fail"}        try:            headers={             "Accept-Language": "zh-CN,zh;q=0.9",             "Accept-Encoding": "gzip,deflate,br",             "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",             "User-Agent": "Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/62.0.3202.62Safari/537.36",             "Host": "www.c5game.com",             "Referer": "https://www.c5game.com/csgo.html",             "Upgrade-Insecure-Requests": "1"            }            params={"k": keyword}            url="https://www.c5game.com/csgo/default/result.html"            response=self.session.get(url,headers=headers,params=params)            soup=BeautifulSoup(response.text,"html.parser")            content = soup.find_all("li", {"class": "selling"})            goods_urls = map(lambda i: "https://www.c5game.com" + str(i.a["href"]), content)  #查询后的商品信息,这个url进去后才是真正的购买连接            keywords=map(lambda i:i.find("span",{"class":" text-unique "}).text,content)            minPrices=map(lambda i:i.find("span",{"class":"price"}).text.replace(u"¥","").replace(",",""),content)            goods_data=[]            for l in range(len(goods_urls)):                goods_data.append({"name":keywords[l],"minPrice":minPrices[l],"goods_url":goods_urls[l]})            res["s"]=1            res["m"]=u"成功获取关键词的商品信息urls"            res["goods_data"]=goods_data        except Exception,e:            traceback.print_exc()        return res

4、爬虫经过判断进行购买

if query_res["s"]:#在c5上查询成功            for  item in  query_res["goods_data"]:#遍历查询出来的结果                rate_price=zh_price*BUY_RATE#opskins价格乘以一个比例                c5_price=float(item["minPrice"])#c5上商品价格起价                if rate_price<c5_price:#如果比例价格小于c5最低价,那么就不用继续比较了                    continue                print "c5_name:",item["name"].encode(sys.stdout.encoding,"ignore")                if item["name"]==Zhname:#找到名称一样的商品                        print "min_c5_price:%s"%c5_price                        detail_res=spider.order(item["goods_url"])#下单                        if detail_res["s"]:#获取商品列表成功                            for ditem in detail_res["data"]:#遍历可以购买的链接                                c5_price=float(ditem["price"])                                print "c5_price:%s"%c5_price                                if rate_price<c5_price:#如果比例价格c5价,那么就不用继续比较了                                    continue                                total_opskin+=zh_price                                total_c5+=c5_price                                print "!!!buy:",ditem["url"]                                match_count+=1                                print "!!!match_count:",match_count                                alert_text=str(sale_price["ensale"])+"----"+"AVER:%s#LOWEST:%s"%(sale_price["price"],zh_price)+"----"+k.decode("utf-8")+"----"+Zhname+"----%s"%ditem["price"]+"----"+ditem["url"]                                alert_text+=u"----手动购买链接:"+item["goods_url"]                                #buy_res=spider.autoBuy(ditem["url"])#下单购买                                buy_res={"s":0,"m":"fail"}                                if buy_res["s"]:#下单购买成功                                    total_opskin_success+=zh_price                                    total_c5_success+=c5_price                                    writeSuccessLog(alert_text.encode("utf-8","ignore"))                                else:                                    with open("fail_buy_urls.txt","ab") as f:                                        f.write(alert_text.encode("utf-8","ignore"))                                        f.write("\n")                                     #async_send_mail(u"C5购买失败报警!已经停止购买程序",alert_text+u"----手动购买链接:"+item["goods_url"])                                    sys.exit()                                print buy_res["m"]

5、打完收工。各位可以去实现自己的代码了。