Skip to content

Instantly share code, notes, and snippets.

View thanakijwanavit's full-sized avatar

Nic Wanavit thanakijwanavit

View GitHub Profile
@thanakijwanavit
thanakijwanavit / findip
Last active January 11, 2020 14:53
a script to get ip address
#!/bin/bash
curl ipinfo.io/ip
@thanakijwanavit
thanakijwanavit / selenium.py
Last active April 21, 2020 04:41 — forked from korakot/selenium.py
Use selenium in Colab
# install chromium, its driver, and selenium
!apt install chromium-chromedriver
!pip install selenium
!cp /usr/lib/chromium-browser/chromedriver /usr/bin
import sys
sys.path.insert(0,'/usr/lib/chromium-browser/chromedriver')
# set options to be headless, ..
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('--headless')
@thanakijwanavit
thanakijwanavit / lambda_selenium_template.yaml
Created April 22, 2020 05:23
Deploy serverless for selenium
#https://github.com/smithclay/lambdium/blob/master/template.yaml
AWSTemplateFormatVersion : '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: selenium with headless chromium
Resources:
DeploymentPermission:
Type: "AWS::Lambda::LayerVersionPermission"
Properties:
Action: lambda:GetLayerVersion
LayerVersionArn: !Ref ChromiumLayer
# from avail.aws.cloudsearch import get_cloudsearch_endpoint_from_settings
import time
import json
def splitList(l,n):
x = [l[i:i + n] for i in range(0, len(l), n)]
return x
# get all items from dynamodb
import boto3
@thanakijwanavit
thanakijwanavit / splitList.py
Created April 28, 2020 09:27
split list into sublists
def splitList(l,n):
x = [l[i:i + n] for i in range(0, len(l), n)]
return x
splitList(l,n)
@thanakijwanavit
thanakijwanavit / trigger_every_hour.yml
Created April 29, 2020 00:47
sam template to add a trigger event every hour
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Parameters:
NotificationEmail:
Type: String
Resources:
CheckWebsitePeriodically:
Type: AWS::Serverless::Function
Properties:
Handler: LambdaFunctionOverHttps.handler
@thanakijwanavit
thanakijwanavit / pd_to_dynamodict.py
Created April 29, 2020 04:44
get dict from pandas dataframe for ingestion by dynamodb
myl=df.T.to_dict().values()
@thanakijwanavit
thanakijwanavit / invokerLambda.py
Created April 29, 2020 18:02
invoke lambda function
import boto3
lambda_ = boto3.client('lambda',
aws_access_key_id = MY_ACCESS_KEY_ID,
aws_secret_access_key = MY_SECRET_ACCESS_KEY,
region_name = 'us-east-1' )
response = lambda_.invoke(
FunctionName='arn:aws:lambda:us-east-1:xxxxxx',
InvocationType='RequestResponse',
LogType='Tail',
Payload= json.dumps({'test': 'testPayload'})
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: >
villaData
Sample SAM Template for villaData
# More info about Globals: https://github.com/awslabs/serverless-application-model/blob/master/docs/globals.rst
Globals:
Function:
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: >
inventory functions
Metadata:
AWS::ServerlessRepo::Application:
Name: inv-app
Description: for managing inventory
Author: nicWanavit