VSCode is supporting online, you can use it by your web browser, it's great.
please access below link to : https://vscode.dev/
VSCode is supporting online, you can use it by your web browser, it's great.
please access below link to : https://vscode.dev/
1. Beacon
The access point periodically sends a beacon frame (every 100ms )to announce its presence and relay many information that is required by the stations to connect to the wireless network
STA begins the process by performing a passive or active scan. In the passive mode, the STA is listening for beacons from an access point. The beacon frame contains the BSSID which is the MAC address of the radio sourcing from the access point.
Beacon packet contains capability information and parameters.
2. Probe Request
Probe requests advertise the mobile stations supported data rates and 802.11 capabilities such as 802.11n.
A probe is sourced from the STA requesting to join a wireless network. The probe is responded by an access point using a probe response management frame. Probe request from a STA broadcasted to any access point that can respond.
3. Probe Response:
APs receiving the probe request check to see if the mobile station has at least one common supported data rate. If they have compatible data rates, a probe response is sent advertising the SSID (wireless network name), supported data rates, encryption types if required, and other 802.11 capabilities of the AP.
4. Authenticated Request
The station chooses a SSID/network from the probe responses it receives. It also checks the compatibility on encryption type. Once compatible networks are discovered the station will attempt low-level 802.11 authentication with compatible access points. The station sends a low-level 802.11 authentication frame to an AP setting the authentication to open and the sequence to 0x0001.
If you noticed in the above successful authentication frame, the Authentication Algorithm was set to Open System. There are two types of methods for authentication.
5. Authenticated Response
STA can be in either two states in Authentication and Association:
The access point receives the authentication frame and responds to the station with authentication frame set to open indicating a sequence, If an access point receives any frame other than an authentication or probe request from a station that is not authenticated it will respond with a deauthentication frame placing the mobile into an unauthenticated an unassociated state. The station will have to begin the association process from the low level authentication step. At this point the station is authenticated but not yet associated
6. Association Request
Once the station determines which access point it would like to associate to, it will send an association request to that access point. The association request contains chosen encryption types and other compatible 802.11 capabilities.
7. Association Response
If the elements of the association request match the capabilities of the access point, it will create an Association ID for the mobile station and respond with an association response with a success message granting network access to the mobile station.
Association Response includes:
If the device
is already operating on a DFS channel and radar signals are detected you will
encounter disconnection, however the connection can
be restored after a while. But you may see the change in the operating channel.
Today I would like to shar on how to use some MD in medium, some markdown might not work the same in githb.
Write code use the command to switch:
https://www.piliapp.com/cool-text/strikethrough-text/
https://fsymbols.com/generators/strikethrough/
his is a HTML :
reference: https://michaeljsanders.com/2017/05/12/scrapin-and-scrollin.html
import time from selenium import webdriver from bs4 import BeautifulSoup as bs # I used Firefox; you can use whichever browser you like. browser = webdriver.Chrome() # Tell Selenium to get the URL you're interested in. browser.get("http://URLHERE.com") # Selenium script to scroll to the bottom, wait 3 seconds for the next batch of data to load, then continue scrolling. It will continue to do this until the page stops loading new data. lenOfPage = browser.execute_script("window.scrollTo(0, document.body.scrollHeight);var lenOfPage=document.body.scrollHeight;return lenOfPage;") match=False while(match==False): lastCount = lenOfPage time.sleep(3) lenOfPage = browser.execute_script("window.scrollTo(0, document.body.scrollHeight);var lenOfPage=document.body.scrollHeight;return lenOfPage;") if lastCount==lenOfPage: match=True # Now that the page is fully scrolled, grab the source code. source_data = browser.page_source # Throw your source into BeautifulSoup and start parsing! bs_data = bs(source_data)
Have you ever see an issue in MAC when Anaconda is been installed propely and the conda is place correctly but still conda will be not found. I'm going to teach you how to solve this issue:
Part1 In case you don't know how to add CONA to PATH
Note: Mac Anaonda is been save in /opt/anaconda3
1. Edit vim ~/.bash_profile
export PATH="/opt/anaconda3/bin:$PATH"
2. wq! or x! to save it
3. source ~/.bash_profile
4. you can check PATH by: echo $PATH
5 conda --version
6 open a new terminal and enter conda --version will occur command not found
Part 2 Terminal running conda
To solve this issue we basely have to just touh a file. In MAC default it uses zshrc
Method1:
1. touch ~/.zshrc
2. edit it
source ~/.bash_profile
3. save it by wq! or x!
4. open new terminal and press coda--version will fix this problem
Method2:
1. go to system preferences>user&groups>
2. unlock your setting
3 click on a username and right-click and select advance option
4. login shell changed to /bin/bash will fix this
find_element_by_id
find_element_by_name
find_element_by_xpath
find_element_by_link_text
find_element_by_partial_link_text
find_element_by_tag_name
find_element_by_class_name
find_element_by_css_selector
or multiply element
find_elements_by_id
find_elements_by_name
find_elements_by_xpath
find_elements_by_link_text
find_elements_by_partial_link_text
find_elements_by_tag_name
find_elements_by_class_name
find_elements_by_css_selector
I think to know XPath is really important.
The syntax of it is:
Xpath=//tagname[@attribute='value']
This is a HTML :
<html><body><p>Are you sure you want to do this?</p><a href="continue.html">Continue</a><a href="cancel.html">Cancel</a><form id="loginForm"><input name="username" type="text" /><input name="password" type="password" /><input name="continue" type="submit" value="Login" /><input name="continue" type="button" value="Clear" /><div class="search">This is new page<h1>Hello</h1>!!!!!</div></form></body></html>
//input[@name='username']
//*[@id="loginForm"]/input[1]
//*[@id="loginForm"]//input[@name="username"]
/html/body/form/input[1]
you can see the input name for clear and login is the same "continue", if we want to get the clear button:
//input[@name='continue'][@type='button']
or
//*[@id="loginForm"]/input[4]
You can also use some function text(), or contain
If you use JUST text(), the string must be the same, else won't find it
//*[text()="str"]
//*[contains(text(),'str')]
if I want to find "continue", I can use this:
//*[text()="Continue"]
or
//*[text()="Cont"]
using (dot)
Sometimes when you used text() or contain() to find, but will not be able to find, you can use this method:
For example, this is Instagram following text, which can't find the following, you have to use this method.
//*[text()[contains(.,'str')]]
//*[contains(.,'str')]
this will search from the root to the current node.
Selenium with Xpath
inorder to use in selenium you have to use like this|:
driver.find_element_by_xpath('put-your-xpath-here').click()
There are many different type of download video streaming tool. I believe many people used it before, but I still wants to share it to you.
Before introduce this tool, I would like to teach how to capture video streaming file from browse. I believe from people would know that when I mention about browser you would reflect it to devtool, well that's right. I am using the devtool to teach how to capture the stream, which is pretty good tool to used.
I like to used YouTube as an example, please notice that youtube steaming split the audio and video stream into two part, the file for video will be webm, and audio would be weba.
Today many web development's security are improvement, some site would not be easy to capture.
Procedure:
1. Lauch your site to youtube and click any video you like
2. left click and presss "inspect"
3. go to "network" and go to xhR
you can see there is a playlist, click on it, you will see the url requst, and content type to make sure it's video type. Note that each pair will have one video one audio stream.
4. select the url and right click to direct to the page and download it. (downlaod both audio and video)
The next thing I wants to intoduce the tool, whic is FFMPEG, this is an oepnsource tool, but it's not GUI, you need to type this command. This tool is to convert the file to any format you like. If you have a mp4 file, and can also convert to mp3. You don't have to used any other tool.
Got to this page to download it: https://ffmpeg.org/download.html
You can click on documentation to understand more command.
I will only teach you 2 command:
1. convert single file: ffmpeg -i filename xxx.[mp3 or mp4 or any file you want)
ffmpeg -i video.mp4 mysong.mp3
2. convert audio and video and merge into one file.
ffmpeg -i video.webm -i audio.weba -c:v copy -c:a aac myvideo.mp4
After you know the command, and download ffmpeg tool, put the two file you download from youtube and copy it into the same directory and used the second command will be able to see the video.
But there is another tool you can use it's much easier, called youtube-dl, command is youtube-dl "youtube url" that's it, you don't need to open devtool.