Filter löschen
Filter löschen

I want MATLAB to pull restaurant names from Yelp

2 Ansichten (letzte 30 Tage)
John Davies
John Davies am 3 Apr. 2020
Beantwortet: Jalaj Gambhir am 6 Apr. 2020
I want to pull restaurant names from Yelp when the user gives a location. Not sure how to get information other than the java. I built this using the help section.
citylocation=input('What is your City location? ','s');
statelocation=input('What is your State location? ','s');
link2web=(['https://www.yelp.com/search?find_desc=Restaurants&find_loc=',citylocation,'%2C+',statelocation,'&ns=1']);
%web(link2web)
url = [link2web];
S = webread(url);
options = weboptions('ContentType','text');
textData = webread(url,options)

Antworten (1)

Jalaj Gambhir
Jalaj Gambhir am 6 Apr. 2020
Hi,
For your specific case, if you look at the textData returned (for say, citylocation = 'New York' and statelocation = 'NY'), you can observe that the results are stored in "og:description" tags' content property
The textData contains:
....
<meta property="og:description" content="Best Restaurants in New York, NY - Jacob&#39;s Pickles, Soco, Bunker...."> %%result truncated for readability
<meta property="og:site_name" content="Yelp">
....
So, you need to extract the text between these two tags. This can be easily achieved by 'regexp'
url = [link2web];
S = webread(url);
options = weboptions('ContentType','text');
textData = webread(url,options)
%% Use the following code:
pattern = '((?<=<meta property="og:description" content=").*(?=<meta property="og:site_name"))'
result = regexp(textData,pattern,'match')
This returns result as:
{'Best Restaurants in New York, NY - Jacob&#39;s Pickles, Soco, Bunker...'}

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by